创建及合并git分支
作者:互联网
在开发中常常需要创建子分支,然后在子分支上进行开发测试,确保功能稳定之后再将子分支合并到主分支上去。这样即可以保证主分支上代码的稳定性,又可以让子分支上新Feature能正常开发测试。让整个项目的风险和进度变的可控。
一、关于分支创建、切换及删除的常用指令:
-
git branch
:查看当前本地仓库中所有分支,并在当前所在分支左边用星号 * 标记 -
git branch -a
:显示本地仓库和远程仓库中所有分支,开头加了remotes/origin/
为远程仓库,其它的为本地仓库。开头用星号标记的为当前仓库所在的分支。 -
git branch f01
:创建分支f01,但不切换到该分支。 -
git checkout f01
:切换到分支f01上。 -
git checkout -
:快速切回到前一个分支上。 -
git checkout <branchName>
:切回到某一指定名称的分支 -
创建本地分支f02,并切到f02分支上:
git checkout -b f02
-
创建本地特性分支,如在 f02分支上创建特性分支f021(特性分支在前面),并切换到该特性分支上:
git checkout -b f021 f02
-
将创建的本地分支f02推送到远程仓库中:
git push -u origin f02
-
删除本地分支 f021,此时该分支必须已经merge,否则需要使用
-D
:git branch -d f021
-
强制删除本地分支f021:
git branch -D f021
-
删除远程仓库origin中的分支f02,此时为直接删除远程仓库中对应的分支:
git push origin --delete f02
二、合并分支常用指令 git merge
本地和远程仓库中有主分支为main
,现在需要开发新的功能,同时有团队其他成员向main
分支不断的提交新的内容。新的功能如果只有自己开发,就无需在远程仓库创建对应的分支,否则需要在远程仓库上创建对应的分支。其方案图如下,在A处创建新的子分支,并在子分支上进行开发及commit。在B2处进行合并到主分支上,并Push到远程。
- 在当前
main
分支上创建自己新的分支AddF01
,并切换到该分支下git checkout -b AddF01
- 在
AddF01
分支上进行开发,测试,待功能完成之后,进行合并提交到main
分支上:
git checkout main
git pull origin main
git merge AddF01
git push origin main
注意
- 在
git merge
之前要先 commit 子分支上的修改,否则若出现 conflict,将无法恢复到之前的状态,导致子分支上的修改丢失。 - 出现conflict时,可以用
git merge --abort
来撤销合并,并让其恢复到之前的状态。
参考资料
标签:git,仓库,创建,branch,f02,checkout,分支 来源: https://www.cnblogs.com/Jeffxu/p/16383015.html