功能分支工作流以集中式工作流为基础,不同的是为各个新功能分配一个专门的分支来开发。
功能分支工作流背后的核心思路是所有的功能开发应该在一个专门的分支,而不是在master分支上。
这个隔离可以方便多个开发者在各自的功能上开发而不会弄乱主干代码。
另外,也保证了master分支的代码一定不会是有问题的,极大有利于集成环境。
1,创建一个新的分支
git checkout -b marys-feature master
创建了一个基于master名为marys-feature的分支,-b选项表示如果分支还不存在则新建分支。
2,编辑,暂存,提交修改,按需提交以实现功能
git status
git add <file name>
git commit -u ""
git push -u origin marys-feature
(这条命令push marys-feature分支到中央仓库(origin),-u选项设置本地分支去跟踪远程对应的分支)
git push
Pull Request
在Git GUI客户端中发起Pull Request,请求合并marys-feature到master,团队成员会自动收到通知。
Pull Request很酷的是可以在相关的提交旁边显示评注,所以你可以很对某个变更集提问。
一旦可以接受Pull Request,就可以合并功能到稳定项目代码中
git checkout master
git pull
git pull origin marys-feature
git push
无论谁来做合并,首先要检出master分支并确认是它是最新的。然后执行git pull origin marys-feature合并marys-feature分支到和已经和远程一致的本地master分支。
你可以使用简单git merge marys-feature命令,但前面的命令可以保证总是最新的新功能分支。
最后更新的master分支要重新push回到origin。
网友评论