git 分支管理

65 阅读2分钟

git 分支管理

分支在实际中有什么用呢?假设你准备开发一个新功能,时间需要两周才能开发完成,如果等开发完成之后再提交,这期间可能会出现文件丢失之类的问题,如果每天都提交,则别人也能更新到你未开发完成的代码,进度也会受到影响。

现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。

新建分支

在创建分支之前,建议使用 git branch 查看一下你当前处于什么分支

1.jpg 这时候可以看到是处于master分支,工作中还会有其它分支的,如 dev 等,如果需要基于dev分支新建分支,则需要先 git checkout dev 意思是切换到dev分支

接下来我们基于master创建一个功能分支(feat2.jpg 再次git branch去查询当前所在的分支

3.jpg 可以看到已经成功切换到新建的功能分支了,也可以看前面的(*),处在哪个分支,哪个分支前面则会有*

总结命令

git branch feat
git checkout feat

// 或者一步到位
git checkout -b feat

提交修改到新分支

git add .
git commit -m "xxxx"
git push origin feat

此时如果你git checkout master 切换到master分支是看不到 feat分支的提交的文件的,这样就可以在需求开发完成之后再一并提交的主分支

合并代码到主分支(master

假设需要合并到master,则需要先切换到master分支

git checkout master

然后再通过git merge feat合并你feat分支的代码 4.jpg 最后再push到master即可

功能测试通过,上线之后,就可以把新建的分支删除掉了

删除分支

git branch -d feat

5.jpg

小结

Git鼓励大量使用分支(例如需求1新建一个分支,需求2也新建一个分支)

查看分支:git branch

创建分支:git branch <name>

切换分支:`git checkout

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>