Git分支相关
git分支在多人协作开发里非常重要,之前没有这方面的需求,所以对这方面了解不多。公司实习多人协作开发,需要这部分的掌握,就重新整理了一下。
git分支
一般远程仓库有多个分支,master为主分支,应该是非常稳定的,也就是仅用来发布新版本,一般开发都在其它分支进行,当稳定后合并到master分支下,如果出现问题,及时回滚。
多人协作中,每个人都在dev分支上提交,每个人都应该创建自己的分支,然后往dev分支上合并。
实际开发
假设,远程仓库有master分支和dev分支,当我们git clone
后,将分支切换到dev分支,然后进行开发,当然此处也可以再新加一个分支,当该功能做完后,再合并到dev分支,最后没问题的情况下合并到master分支。其它修bug或者新增一个功能的时候,也都可以新增一个分支,完成后合并,最后将分支删除。(当然,此处说的可能和实际开发还会有些出入,因为还没有真正在公司开发中尝试。如果后面有别的理解后,会再做做修改)。
分支合并
两种方式:
- merge
- rebase
首先merge便于理解,merge会把两分支的最新快照以及二者共同祖先进行三方合并,结果是产生一个新的快照。
而rebase命令能将提交到某一分支上的所有修改都移至另一分支上,其最直接的结果就是能确保在向远程分支推送时,能保持提交历史的整洁,即使用git log --graph
查看分支提交历史时,是一条直线,更加简洁。
相关命令整理
提交文件到git仓库
1 | git add <file> #将工作区文件提交到暂存区 |
远程仓库
1 | git remote #查看远程仓库信息 |
分支相关
1 | git branch #查看分支 |
解决冲突
当提交到远程仓库时,目标与当前不一致(即可能别人在这条分支上提交后),就会产生冲突。需要先在本地把冲突解决,然后提交。
1 | git pull #将最新的提交从orgin分支上抓取下来 |
- 感谢你的欣赏!
赞赏名单
因为你的支持,我感受到写文章的价值。
本文是原创文章,采用CC BY-NC-SA 4.0协议,完整转载请注明来自HDi - 随便记