GIT 简单版

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GIT 简单版相关的知识,希望对你有一定的参考价值。

 

Git规范

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

分支模型

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

master 分支

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

develop 分支

develop 由master分支检出,它作用主要是日常开发合并代码,并与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

最后

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

以上是关于GIT 简单版的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

GIT 简单版

如何管理在每个 git 版本中添加私有代码片段?

使用 Git 来管理 Xcode 中的代码片段

markdown Git代码片段

gitlab 9.0对ruby的版本有要求吗