IT技术博客大学习 共学习 共进步

git flow使用经验小记

某人的栖息地 2011-06-24 12:21:46 浏览 3,164 次

    我在半年前开始在公司内推广使用git flow,控制版本发布流程,到目前为止效果令人满意。

    但是实际使用过程中有一些小小的意外流程,完全照搬git flow的模型不太容易处理好。好在git本身就很灵活,碰到问题基本上都有办法绕过去。下面是我总结的一些特例情况下的处理办法。

    git-flow

测试/共享单独一个feature

    有时候我们需要将一个feature独立测试,或者share给多人一块开发,那么可以将这个feature推到远程git库上,这可以利用git flow的publish功能搞定:

git flow feature publish my_cool_feature

    这会将 feature/my_cool_feature 分支push到远程git库,多人开发或者单独测试毫无压力。

feature在development分支测试完成,准备release的时候有另外一个未经测试的feature合并进来

    已经完成测试的development被未经测试的提交污染了,这时候可以先本地回滚development分支,然后再进行git flow的release流程,例如:

git checkout development
git reset --hard 5cbadfe885d1eb514b3f07b3f269ca1a7f261e21   #假设测试通过的git rev是这个
git flow release start v1.0.1
git flow release finish v1.0.1

development上有个feature需要测试比较长时间,影响了一些耗时较短的feature发布

    development分支上有个feature测试时间比较长一直释放不了,怎么办?―― 果断采用hotfix功能

git br -m feature/another_cool_feature hotfix/another_cool_feature

    把耗时短的feature直接转换为hotfix,然后采用git flow的hotfix流程可以直接合并到master分支发布。

建议继续学习

  1. Git常用命令备忘 (阅读 54,504)
  2. Git log diff config高级进阶 (阅读 24,721)
  3. Git subtree 要不要使用 –squash 参数 (阅读 23,284)
  4. 我的git笔记 (阅读 20,084)
  5. Zend Studio集成Git使用 (阅读 8,861)
  6. Git commit 注释格式 (阅读 6,802)
  7. GIT和SVN之间的五个基本区别 (阅读 5,742)
  8. Git安装使用手记 (阅读 4,923)
  9. 为何改用Git (阅读 4,862)
  10. 用git部署php站点 (阅读 4,741)