目录
💐Per aspera ad astra 循此苦旅,以觅繁星 💐
分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了Git又学会了SVN!
分支在实际开发中的作用
在进行多人协作开发的时候,为了防止互相干扰,提高协同开发的体验,建议每个开发者都基于分支进行项目功能的开发
在初始化本地Git仓库的时候,Git 默认已经帮我们创建了一个名字叫做master的分支。通常我们把这个master分支叫做主分支。
在实际工作中,master主分支的作用是:用来保存和记录整个项目已完成的功能代码
因此不允许程序员直接在master分支上修改代码,因为这样做的风险太高,容易导致整个项目崩溃
可以查看当前Git仓库中所有的分支列表
git branch

使用如下的命令,可以基于当前分支,创建一-个新的分支,此时,新分支中的代码和当前分支完全一样
git branch 分支名称

可以切换到指定的分支上进行开发
git checkout 分支名称

可以创建指定名称的新分支,并立即切换到新分支上
git checkout -b 分支名称
是git branch 分支名称和git checkout 分支名称两条命令的简写形式
功能分支的代码开发测试完毕之后,可以使用如下的命令,将完成后的代码合并到master主分支上
1. 切换到master 分支
git checkout master
2. 在master分支上运行 git merge 命令,将login分支代码合并到master分支
git merge login
注意点
当把功能分支的代码合并到master主分支上以后,就可以使用如下的命令,删除对应的功能分支
git branch -d 分支名称
如果分支未合并会提示删除失败
强制删除,分支未合也会删除
git branch -D 分支名称
如果在两个不同的分支中,对同一个文件进行了不同的修改,Git 就没法干净的合并它们。此时, 我们需要打开这些包含冲突的文件然后手动解决冲突。
打开包含冲突的文件,手动解决冲突之后,在执行以下命令、
- git add . (通知已经手动解决问题了)
- git commit -m " 解决了分支合并冲突的问题"
如果是第一次将本地分支推送到远程仓库
git push -u 远程仓库的名称 本地分支名称: 远程分支名称
-u表示把本地分支和远程分支进行关联,只在第一次推送的时候需要带-u参数
如果希望远程分支的名称和本地分支名称保持一致,可以对命令进行简化
git push -u origin payment
注意 :第一次推送分支需要带-U参数,此后可以直接使用git push推送代码到远程分支。
git remote show 远程仓库名称
跟踪分支指的是:从远程仓库中,把远程分支下载到本地仓库中。
从远程仓库中,把对应的远程分支下载到本地仓库,保持本地分支和远程分支名称相同
git checkout 远程分支的名称
从远程仓库中,把对应的远程分支下载到本地仓库,并把下载的本地分支进行重命名
git checkout -b 本地分支名称 远程仓库名称/远程分支名称
从远程仓库,拉取当前分支最新的代码,保持当前分支的代码和远程分支代码一致
git pull
删除远程仓库中,指定名称的远程分支
git push 远程仓库名称 --delete 远程分支名称
Git分支就整理到这了
🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀