版本控制的最佳實踐

地址:https://www.git-tower.com/learn/git/ebook/cn/command-line/appendix/best-practices#start

說在前面的話:

即使是懂得如何運用基本技巧,如工作流,回滾,追加備註等等,想要良好的運用Git 還有很多要去學習,不止於它的技巧,還應包括它的理念。

 

版本控制的最佳實踐

提交對映改動

一次提交要包括一個相關改動。例如,對於兩個錯誤的修復應該進行兩次不同的提交。精簡的提交可以讓其他的開發團隊人員更簡單地明白其改動的用義。如果其中一次提交的改動出現了問題,也可以方便地回滾到改動之前的狀態。藉助暫存功能來標記相關的改動文件,Git 可以爲你打造出非常精準的提交。

頻繁地提交改動

經常性地提交改動可以確保不會出現特別龐大的提交,同時也可以比較精準地對應到所需要的改動上。此外,通過頻繁地提交也可以比較快速地和其他開發人員來共享你的改動。同樣也會避免在整合代碼時出現過多的合併衝突。相反的,非常龐大的提交會加大整合代碼時出現衝突的風險,解決這些衝突也會非常複雜。

不要提交不完整的改動

雖然原則上來說不要提交一些還沒有完成的改動,但是對於一個非常龐大的新功能來說,也並不意味着你必須整體完成這個功能後纔可以提交。恰恰相反,你必須把那些改動正確地分割成一些有意義的邏輯模塊來進行頻繁地提交。如果你僅僅是因爲急着想要下班,或者是想要得到一個乾淨的工作副本(比如想要切換到另一個分支上),你可以利用 Git 所提供的儲藏(Stash)功能來解決這些問題。切記不要把那些不完整的改動提交到倉庫中。

提交前測試那些改動

不要理所當然地認爲自己完成的改動都是正確的。所有的改動一定要通過徹底地測試才表示它真正地被完成了。儘管這些改動可能僅僅是提交到了你的本地倉庫中,只有你自己才能看到,但完整的測試同樣是非常重要的,因爲這些代碼可能之後會被推送和共享到遠程給其他的開發人員。

高質量的提交註釋

提交註釋的標題需要一個少於50個字符的簡短說明。在一個空白的分割行之後要對改動的細節進行一個詳細地描述。例如嘗試着回答兩個問題:出於什麼原因需要進行這次修改?具體改動了些什麼?爲了和自動生成的提交註釋保持一致(例如 git merge 可能會自動生成提交),一定要使用現在時祈使句(例如要使用 change ,而不要使用 changed 和 changes)。

版本控制不是備份系統

版本控制系統具有一個很強大的附帶功能,那就是服務器端的備份功能。但是千萬不要把 VCS 僅僅當成一個備份系統。特別需要注意的是,只能提交那些有意義的改動。VCS 不是用來備份文件用的。(請參閱 <提交對映改動>)

使用分支功能

分支是 Git 一個非常強大的功能,當然這不是偶然的。自始至終,Git 的宗旨就是提供一個即快速又簡單的分支功能。它是一個優秀的工具,並且可以幫助解決開發人員在日常工作中存在的代碼衝突的問題,因此分支功能應該廣泛地被運用在不同的開發主題中。比如添加新功能,修復錯誤,嘗試新的想法等等。

遵循一個工作流程

Git 可以支持很多不同的工作流程:長期分支、功能分支、合併以及 rebase、git-flow 等等。選擇什麼樣的開發流程要取決如下一些因素:項目開發的類型,部署模式和(可能是最重要的)開發團隊成員的個人習慣。不管怎樣,選擇什麼樣的流程都需要得到所有開發成員的一致認可,並且一直遵循它。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章