原文鏈接:Git Workflows and Tutorials
譯文發在博樂在線: http://blog.jobbole.com/76550/,2014-09-14
譯序
這篇指南以大家在SVN
中已經廣爲熟悉使用的集中式工作流作爲起點,循序漸進地演進到其它高效的分佈式工作流,還介紹瞭如何配合使用便利的Pull
Request
功能,體系地講解了各種工作流的應用。 如果你Git
用的還不多,可以從前面的講的工作流開始操練。操作過程去感受指南的講解:解決什麼問題、如何解決問題,這樣理解就深了,也方便活用。
行文中實踐原則和操作示例並重,對於Git
的資深玩家可以梳理思考提升,而新接觸的同學,也可以跟着step-by-step操作來操練學習並在實際工作中上手使用。
工作流其實不是一個初級主題,背後的本質問題其實是有效的項目流程管理和高效的開發協同約定,不僅是Git
或SVN
等VCS
或SCM
工具的使用。
關於Git
工作流主題,網上體系的中文資料不多,主要是零散的操作說明,希望這篇文章能讓你更深入理解並在工作中靈活有效地使用起來。
Gitflow
工作流是經典模型,處於核心位置,體現了工作流的經驗和精髓。隨着項目過程複雜化,會感受到這個工作流中深思熟慮和威力!
Forking
工作流是協作的(GitHub
風格)可以先看看GitHub
的Help:Fork
A Repo和Using pull requests 。照着操作,給一個GitHub
項目貢獻你的提交,有操作經驗再看指南容易意會。指南中給了自己實現Fork
的方法:Fork
就是服務端的克隆。在指南的操練中使用代碼託管服務(如GitHub
、Bitbucket
),可以點一下按鈕就讓開發者完成倉庫的fork
操作。
PS:
文中Pull Request
的介紹用的是Bitbucket
代碼託管服務,由於和GitHub
基本一樣,如果你用的是GitHub
(我自己也主要使用GitHub
託管代碼),不影響理解和操作。
PPS:
更多Git
學習資料參見
Git
的資料整理 by @xirong- 自己整理的分享PPT git-gitlab-usage.pptx @ 個人整理一些
Git
資料
Git
工作流指南
工作流有各式各樣的用法,但也正因此使得在實際工作中如何上手使用變得很頭大。這篇指南通過總覽公司團隊中最常用的幾種Git
工作流讓大家可以上手使用。
在閱讀的過程中請記住,本文中的幾種工作流是作爲方案指導而不是條例規定。在展示了各種工作流可能的用法後,你可以從不同的工作流中挑選或揉合出一個滿足你自己需求的工作流。
概述
集中式工作流
如果你的開發團隊成員已經很熟悉Subversion
,集中式工作流讓你無需去適應一個全新流程就可以體驗Git
帶來的收益。這個工作流也可以作爲向更Git
風格工作流遷移的友好過渡。
功能分支工作流
功能分支工作流以集中式工作流爲基礎,不同的是爲各個新功能分配一個專門的分支來開發。這樣可以在把新功能集成到正式項目前,用Pull Requests
的方式討論變更。
Gitflow
工作流
Gitflow
工作流通過爲功能開發、發佈準備和維護分配獨立的分支,讓發佈迭代過程更流暢。嚴格的分支模型也爲大型項目提供了一些非常必要的結構。
Forking
工作流
Forking
工作流是分佈式工作流,充分利用了Git
在分支和克隆上的優勢。可以安全可靠地管理大團隊的開發者(developer
),並能接受不信任貢獻者(contributor
)的提交。
Pull
Requests
Pull requests
是Bitbucket
提供的讓開發者更方便地進行協作的功能,提供了友好的Web
界面可以在提議的修改合併到正式項目之前對修改進行討論。