为了账号安全,请及时绑定邮箱和手机立即绑定

Git规范

标签:
Java Android
Git规范

by 程序亦非猿 2016.4.6
这又是一篇我在公司分享的,想制定一下Git的规范,有兴趣的可以看看~
上一篇在这里

分支模型

每个项目必须要有masterdevelop分支。
每个开发人员拥有一个自己的分支,如yfychz

master 分支

master 分支只能存在release版本的代码,并需要对每个release打对应的tag

develop 分支

developmaster分支检出,它作用主要是日常开发合并代码,并与master分支做交互。
当参与开发的人员较多时,可指定一个人管理develop分支,专门负责合并代码,便于管理,避免多人同时使用develop分支而出现问题。

另外当功能开发完毕后,代码合并入develop分支,测试完成通过后,merge到master分支,并在master上打tag。

开发人员自己的分支

开发人员自己的分支,由develop分支检出,是自己负责的功能分支的上游

工作流程

Feature (新需求开发)

当有新需求需要开发时:

  1. 每个开发人员在自己的分支上检出一个新的feature分支,如在czn上检出feature_search分支
  2. 在新的feature分支上进行开发
  3. 新功能开发完毕后合并到自己的分支
  4. 所有人员的分支合并到develop分支,并进行测试
  5. 测试通过后合并到master,并打tag

Hotfix (紧急修复bug)

当有紧急bug需要修复时

  1. 从master 拉分支hotfix_xxx
  2. 修复完毕后合并到develop分支
  3. 测试完毕后合并到master分支,并打tag
小结

分支模型已经工作流程大约如图所示:
分支模型-工作流程

Gitflow

gitflow是git的一个辅助工具,可以简化我们新建分支,合并分支,删除分支的操作,也可以减少人工误操作而出错的概率

举个例子:
新功能能开发,使用gitflow之前:

git checkout yfy
git checkout -b feature_search
...developing...
git checkout yfy
git merge feature_search
git branch -d feature_search

使用gitflow之后:

git flow feature start search
...developing...
git flow feature finish search

是不是省去了很多繁琐的操作?

gitflow 的功能不止如此~

gitflow虽好,但是考虑到大家刚开始使用git,需要熟悉git以及git命令,所以它现在不是强制的,如果有兴趣或者你也懒得敲那么多命令的话,建议看看 git-flow 备忘清单

PS: 事实上git最开始是没有gitflow的,它是用户实际经验的总结,so,希望我们团队最终能拥有最适合我们自己的gitflowgitf

最后

规范是死的,人是活的,上诉所说都是比较理想化的,实际情况可能更加复杂,大家可以根据实际情况调整。

如果有疑问或更好的建议,欢迎反馈~~~

另外欢迎关注:
我的Github
我的微博
我的微信公众号:
微信公众号

点击查看更多内容
20人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消