與你的團隊分享git hooks的兩種方式

2021-09-13 23:26:17 字數 1107 閱讀 6883

git hooks 是git非常好用的乙個特性,在我自己的專案中,我需要保證我的所有go原始檔都能夠被正確地格式化,然後才能夠被commit。因此,我用了乙個很簡單的git hook完成這項工作,你可以把這個檔案的內容儲存到.git/hooks/pre-commit來實現這個功能。

對我個人而言,這樣的工作已經足夠,但是我想把這個好主意分享給我的小夥伴們。這篇stack overflow 文章給了我一些靈感,我在這裡進行一些擴充套件。

由於.git資料夾是不會被git跟蹤的,因此我們需要在根目錄建立乙個.githooks來儲存我們的hooks指令碼。你可以選擇任意的資料夾名,只要能夠work即可。記住所有的hooks需要可執行許可權,所以需要保證所有的hook指令碼都執行過chmod +x命令,否則,指令碼將不會工作。

如果你的 git版本為version 2.9或者更高,你可以簡單地通過設定core.hookspath配置項來實現你的功能:

$ git config core.hookspath .githooks
$ find .git/hooks -type l -exec rm {} \; && find .githooks -type f -exec ln -sf ../../{} .git/hooks/ \;
雖然hooks通常是本地指令碼,但是在共享的時候,通常需要確保團隊的成員都能夠將hooks放置在合適的位置,並且能夠正常地工作。特別是在他們每次做了新的checkout的時候,因此我把我的指令碼放在了makefile中,在每次我的專案初始化的時候自動去執行,下面是我的兩個任務:

init:

git config core.hookspath .githooks

earlier version:

init: 

find .git/hooks -type l -exec rm {} \;

find .githooks -type f -exec ln -sf ../../{} .git/hooks/ \;

研發團隊技術學習與分享

首先,我們需要明確為什麼要做這件事情。這件事情能給大家帶來什麼,預期結果又是什麼,這裡的 大家 主要有3個主體 公司 團隊 個人,每個主體對於技術學習與分享這件事件,都有不同的預期結果,下面總結了幾點目的 了解了目的,我們需要想想如何做,才能達成目的。的學習 培訓是比較難順利推進,繁重的開發任務和人...

如何與團隊成員分享資訊的 作為團隊管理者的我

mike mcgarr 是 netflix 的一名開發經理,在他的一篇博文裡,mike 跟我們分享了作為乙個團隊管理者,他是如何與團隊成員分享資訊的。作為一名開發經理,mike 大部分時間都花在了會議以及與團隊成員的一對一談話上。通過這些會議和談話,他可以從組員那裡收集到很多有用的資訊。對於幾個人的...

如何帶好你的團隊

在五月初的時候,我接到了乙個小團隊的輔導工作。儘管當時比較忙,還是很欣慰的把任務接下來了,這是乙個提高我團隊管理的機會。在輔導團隊管理的時候,果然遇到了一些問題,看來管理這門學問還是需要好好學習啊。我的任務主要是對他們的工作進行驗收,因為這是一批剛入職的新人,在工程和文件上有很多不足之處,我的任務就...