Git如何合并分支到主干及合并主干到分支
参考资料
零、预备知识
每个团队都有自己的团队分支,这样他们可以在开发期间检入并共用代码(有些团队有几种不同类型的团队分支)。团队分支的政策比主干宽松得多。代码必须编译,所有单元测试都必须通过,但功能不一定非要完成或测过。采用团队分支的目的是向开发人员提供一个检入未完成代码的地方。
基本上,变更连续不断“向下”检出(checkout)(从主干到团队分支,再到工作站),而“向上”检入(从工作站到团队分支,再到主干)则在固定的点进行。
每天早晨,团队主管将主干上的所有变更与团队分支合并,立即处理所有合并冲突。同样,每位开发人员也要每天将团队分支上的所有变更与他们各自的工作站合并。 只要开发人员认为自己的代码已经很稳定(即,代码已编译,单元测试已通过),就可以将代码检入团队分支,与团队其他成员共享。
只要团队认为他们已经完成一个功能,可以采取下列行动:
检出主干代码并与团队分支合并(以防万一当天有其他团队已更新过主干代码);
最后一次检查代码,确保团队分支代码已经稳定(即可供系统测试);
将团队分支合并到主干。
一、创建分支
git branch team1 #team1是分支名称
二、合并分支到主干
在主干基础上生成系统测试分支,方便为后续的系统测试阶段提供稳定版本
-
切换到team1分支
git checkout team1 #切换到team1分支(接下来的步骤将在team1分支下进行操作)
-
将team1分支代码拉取到本地
git pull #将team1分支代码拉取到本地
-
切换到master主干
git checkout master #切换到master主干(接下来的步骤将在master下进行操作)
-
合并team1分支代码到master
git merge team1 #合并team1分支代码到master
-
提交到远程master主干
git push
三、合并主干到分支
在系统测试分支下修复bug,并将该分支合并到主干上,此时不同团队将主干代码合并到各自团队的分支上,使得Bug修复能够快速到达所有团队分支上
-
切换到master分支
git checkout master #切换到主干(接下来的步骤将在主干下进行操作)
-
将team1分支代码拉取到本地
git pull #将主干代码拉取到本地
-
切换到team1主干
git checkout team1 #切换到team1主干(接下来的步骤将在team1下进行操作)
-
合并master分支代码到team1
git merge master #合并master分支代码到team1
-
提交到远程team1分支
git push