簡體   English   中英

如何以自動方式管理團隊中的git pre-commit鈎子?

[英]How do you manage git pre-commit hooks in a team in automated way?

假設您正在與20人的開發團隊合作或支持,並希望使用git pre-commit鈎子作為對正在提交或推送的代碼強制執行某些驗證的方法。 例如,您希望確保人們不檢查大型資產或SWF文件的調試版本,您還要檢查代碼是否具有足夠的測試覆蓋率等。

1.)應該有一個可以管理這些鈎子的中心位置

2.)它們應該在所有用戶/機器上自動更新

我一直很幸運將一些git setup和bootstrap配置放入構建本身。

通過這種方式,您可以通過向構建中添加一個階段來管理.git/hooks目錄,該階段將.git/hooks與已提交的conf/git-hooks同步。

如果您的開發人員僅使用他們的IDE來構建/運行/測試代碼,那么這可能會非常糟糕,並且開發人員可以禁用或跳過任何本地運行的鈎子。

您可以在中央存儲庫中放置一些掛鈎(大型斷言,調試SWF檢查),查看后接收和更新掛鈎

如果您需要更多的靈活性,像Gitolite的虛擬引用功能將讓您只允許特定的開發人員炫耀規則。

我建議您不要以他提交的方式限制開發人員。 讓他自由地按照自己的優先順序完成任務。 話雖如此,保持編碼風格的結構也很重要。

我建議您使用Team City等構建運行程序來處理此類任務。 在開發分支上設置teamcity上的一些鈎子,這將驗證代碼質量並向您發送非常詳細的報告。

此外,有時您必須向客戶提供修補程序,而您在那個時間點並不真正關心代碼質量。 當你的系統充滿了如此討厭的鈎子時,這些案例成為一個真正的大問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM