深入理解学习Git工作流

Posted bcombettter

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入理解学习Git工作流相关的知识,希望对你有一定的参考价值。

http://blog.csdn.net/hongchangfirst/article/list/3 //可以看看

http://blog.csdn.net/hongchangfirst/article/details/46606707 // 可以看看

个人在学习git工作流的过程中,从原有的 SVN 模式很难完全理解git的协作模式,直到有一天我看到了下面的文章,好多遗留在心中的困惑迎刃而解,于是我将这部分资料进行整理放到了github上,欢迎star查看最新更新内容, https://github.com/xirong/my-git/blob/master/git-workflow-tutorial.md

  • 我们以使用SVN的工作流来使用git有什么不妥?
  • git 方便的branch在哪里,团队多人如何协作?冲突了怎么办?如何进行发布控制?
  • 经典的master-发布、develop-主开发、hotfix-不过修复如何避免代码不经过验证上线?
  • 如何在github上面与他人一起协作,star-fork-pull request是怎样的流程?

我个人很感激这篇文章,所以进行了整理,希望能帮到更多的人。整篇文章由 xirong 整理自 oldratlee 的github,方便统一的学习回顾,在此感谢下面两位的贡献。

原文链接:Git Workflows and Tutorials
简体中文:由 oldratlee 翻译在 github 上 git-workflows-and-tutorials


 

 

一、译序

工作流其实不是一个初级主题,背后的本质问题其实是有效的项目流程管理和高效的开发协同约定,不仅是GitSVNVCSSCM工具的使用。

这篇指南以大家在SVN中已经广为熟悉使用的集中式工作流作为起点,循序渐进地演进到其它高效的分布式工作流,还介绍了如何配合使用便利的Pull Request功能,体系地讲解了各种工作流的应用。

行文中实践原则和操作示例并重,对于Git的资深玩家可以梳理思考提升,而新接触的同学,也可以跟着step-by-step操作来操练学习并在实际工作中上手使用。

关于Git工作流主题,网上体系的中文资料不多,主要是零散的操作说明,希望这篇文章能让你更深入理解并在工作中灵活有效地使用起来。

PS

文中Pull Request的介绍用的是Bitbucket代码托管服务,由于和GitHub基本一样,如果你用的是GitHub(我自己也主要使用GitHub托管代码),不影响理解和操作。

PPS

本指南循序渐进地讲解工作流,如果Git用的不多,可以从前面的讲的工作流开始操练。操作过程去感受指南的讲解:解决什么问题、如何解决问题,这样理解就深了,也方便活用。

Gitflow工作流是经典模型,体现了工作流的经验和精髓。随着项目过程复杂化,会感受到这个工作流中深思熟虑和威力!

Forking工作流是协作的(GitHub风格)可以先看看Github的Help:Fork A RepoUsing pull requests 。照着操作,给一个Github项目贡献你的提交,有操作经验再看指南容易意会。指南中给了自己实现Fork的方法Fork就是服务端的克隆。在指南的操练中使用代码托管服务(如GitHubBitbucket),可以点一下按钮就让开发者完成仓库的fork操作。

以上是关于深入理解学习Git工作流的主要内容,如果未能解决你的问题,请参考以下文章

Git 学习深入理解git reset 命令

工具Git

使用plumbing命令来深入理解git add和git commit的工作原理

SourceTree 实现 git flow 流程

Git之深入解析如何贮藏工作分支与清理工作目录

Git之深入解析如何通过GPG签署和验证工作