个人理解:合并分支时候就是当前分支,与别的分支先合并一遍,然后解决分支中存在的所有冲突,之后将本地分支代码提交到git远程仓库,之后切换主干分支 ,将主干分支与分支内容合并,解决冲突, 在提交主干分支内容,最后push主干分支内容到远程仓库 以下是我参考的内容
git分支开发,分支(feature)同步主干(master)代码,以及最终分支合并到主干的操作流程
由于rebase执行速度慢,分支同步主干代码时,分支的每次提交都可能和主干产生冲突,需要解决的次数太多,影响提交效率。 同时,为了保证主干提交线干净(可以安全回溯),所以采用下面所说的merge法。
merge法
核心: (master) git merge feature --squash
意思是把feature
分支不同于master
分支的所有文件罗列出来(无论有几个提交),然后就可以方便的git commit
提交了
#1 创建功能分支
(master) git checkout -b feature
#2 功能迭代
(feature) git commit ...
#3 合并最新主干代码
(feature) git checkout master
(master) git pull
(master) git checkout feature
(feature) git merge master
解冲突
(feature) git commit 节点名
4 review,修改代码
(feature) git commit
5 提交测试通过后,合并到主分支,先执行一遍第3步 #
把提交合并成一个
(feature) git checkout master
(master) git merge feature --squash
(master) git commit #
推送到远端,正常结束
(master) git push origin #
6 如果上一步被拒绝,是因为master有更新的代码入库了,为了防止master上出现分线,需要重新执行第5步
文章转载:详情请参考:原地址