天天看點

git master主分支_提高GIT中代碼品質的七點優秀實踐

git master主分支_提高GIT中代碼品質的七點優秀實踐

毋庸置疑,由于Git允許開發人員能夠同時在相同的代碼庫上工作,是以它在各類軟體開發中起到了重要的作用。不過,我們也發現部分開發人員由于未能遵循Git的相關最佳實踐(請參見--https://acompiler.com/git-best-practices/),是以導緻了各種程式在運作,以及代碼調用過程中所暴露出來的棘手問題。下面,我将和您讨論在GIT中,影響代碼品質的七項優秀實踐,希望能夠對您的日常開發項目提供幫助。

git master主分支_提高GIT中代碼品質的七點優秀實踐

1.原子性送出(Atomic Commit)

衆所周知:向Git送出内容,就意味着您已經确認了代碼的更改,并希望将其作為新的受信任版本,儲存到Git存儲庫中。不過,版本控制系統通常不會限制您送出代碼的方式。也就是說,您可以采取如下三種方式中的任何一種:

  • 一次性送出上千個更改。
  • 送出所有的dll和其他依賴項。
  • 将有問題的代碼檢入存儲庫中。

可見,此舉并不能保證更新代碼的一緻性,有時甚至會讓代碼的整體品質有所下降。是以我們需要一些時間來檢查代碼(請參見-- https://dzone.com/articles/what-is-code-review-and-why-do-you-need-it)。在此,為了保障團隊的總體生産力水準,我們可以采用原子性送出(請參見-- https://acompiler.com/git-commands/),例如:在執行原子性送出時,您的某項更改送出可能會涉及多個檔案,那麼我們應當確定這是全局性的寫入,進而避免出現任何不一緻的情況。和我們以前熟悉的資料庫原子性一樣,我們顯然需要将其貫徹到針對Git的操作中。

2.明确地說明送出的内容

許多開發人員隻是一味地執行更改,送出,以及推送等操作流程,從來不會顧及送出檔案的類型和必要性。這樣就會導緻諸如:dll和pdf等不需要的檔案類型,被送出到了存儲庫中。是以,在将代碼檢入存儲庫之前,您可以考慮如下兩個問題:

  • 您是否确實需要檢入所有的檔案?
  • 它們是否為源代碼中必要的部分?

您可以簡單地使用.gitignore檔案(請參見-- https://acompiler.com/git-commands/),來避免在存儲庫中出現那些不需要的檔案。.gitignore檔案既能夠為我們提高存儲庫的清晰度,又有助于我們保持代碼的整潔性。據此,您可以自由地送出各種代碼檔案,那些.dll和.class等自動生成的非必要檔案,則會被自動地忽略掉。如果您要同時處理多個存儲庫,則可以使用全局.gitignore檔案,而無需反複地進行添加或推送。

3.掌握各種Git指令

毫無疑問,Git是一個功能強大、且超級實用的工具。如果您能夠像對待Linux/Unix作業系統那樣,熟練地掌握各種基本的git指令(請參見--https://acompiler.com/git-commands/),那麼您就能夠更有效地使用該工具,并在操作Git的過程中達到事半功倍的效果。

在使用Git時,您可能會碰到一些文法規則等困難,而Git提供了非常友好的聯機幫助。您可以使用“git help+指令名稱”從git的bash中了解有關某個Git指令的更多資訊。這種快捷的查找方式,幾乎含括了您可能用到的所有git指令。

4.梳理工作流程

如果您的團隊正在某個Git管理項目上協同工作,那麼整個開發團隊必須確定并使用相同的工作流程。統一流程無疑會給大家帶來如下三項優勢:

  • 讓開發的整個過程更具有條理性。
  • 良好的Git工作流程可始終確定分支(branches)處于整潔狀态。
  • 讓團隊的溝通更加流暢,并提高輸出代碼的整體品質。

5.先測試後推送

我們需要在送出代碼,或将代碼推送到生成環境之前,對各項更改進行充分地測試。過去,我們想方設法阻止項目成員将有缺陷的代碼,直接送出的本地存儲庫中。如今,我們同樣需要本着靈活開發的思想,避免那些有問題的源代碼,給線上協作團隊造成困擾。在具體實踐中,我們需要做到:

  • 鼓勵整個團隊在送出之前,針對其代碼的更改部分開展相關的單元測試,這是從根源上避免代碼缺陷的流出。
  • 如果在建構的過程中,發現了任何代碼的錯誤,應立即終止建構。大家可通過“會診”的方式,及時修複該錯誤,以避免此類錯誤流入Git中,甚至被其他的代碼段所調用到。

6.保護主(master)分支

由于Git中的預設分支是master,是以我們需要確定master分支上的代碼,能夠穩定地處于生産環境之中。您可以通過諸如:前後鈎子(pre and post hooks)、以及公司相關政策等多種方式,來保護master分支。此外,您還可以在master分支上啟用如下防護措施:

  • 確定master分支不會被意外或有意地删除。
  • 在master分支上的各種送出曆史記錄,不應被覆寫掉。
  • 在master中,代碼不應在未經審查的情況下,被直接檢入。

7.分支管理

Git提供了強大的分支模型。您應該将手頭的代碼保留在與主分支完全隔離的其他分支中。無論您是要添加一個新功能,還是修複一些錯誤,亦或需要進行重構,都請首先建立一個新的分支。在完成了必要的更改之後,請審查代碼,再發出拉取請求,将其合并到主分支中,并保持同步。

小結

上面便是我們在使用Git時,需要遵循的七項優秀實踐。當然,為了進一步提高代碼品質和整體生産率,您也可以借鑒AFTER技術,具體内容可參考--https://acompiler.com/after-technique/。

Java幫幫

非盈利學習社群

官網:www.javahelp.com.cn

git master主分支_提高GIT中代碼品質的七點優秀實踐

職涯寶

幫助職業者成功

分享優質内容

官網:zhiya360.com

git master主分支_提高GIT中代碼品質的七點優秀實踐

九點程式設計

深夜學習,未來可期

git master主分支_提高GIT中代碼品質的七點優秀實踐