2012-04-19 68 views
23

我們想在外部數據庫中存儲一些關於提交的元信息。在克隆或結帳期間,應該引用該數據庫,並將元信息複製到克隆的repo中的文件中。該數據庫是必需的,而不是僅僅使用一個文件索引和搜索等的緣故...git hooks:有沒有克隆鉤子?

我想,如果有一個克隆掛鉤,我們可以觸發此。我在.git/hooks中找不到樣本中的克隆鉤子。有一個嗎?後檢查鉤在客戶端唯一的可能性?

回答

20

確定,要做到這一點的方法之一是使用clone --template選項。

指定在客戶端側鉤將被存儲爲值到--template開關的位置。鉤子被複制到克隆中,並且立即啓動後結賬鉤子!

+4

但模板目錄不能是你所克隆的倉庫裏面 - 它必須在文件系統中已經存在,你克隆之前。 – chrishiestand 2013-03-28 19:45:58

+1

http://stackoverflow.com/a/2141577/1183537幫了我很多,更多的澄清,並解決你說的@chrishiestand – SuckerForMayhem 2014-01-23 18:11:01

10

當您的克隆遠程存儲庫時,您不能運行任何客戶端掛鉤,因爲掛鉤對於您的工作副本是本地的,而且您正在從頭創建一個掛鉤。當你從從遠程存儲庫的新變化,git將運行你的本地post-merge掛鉤,如果它存在。

作爲拉動操作的結果,服務器上沒有任何運行。一個操作將觸發服務器的updatepost-update掛鉤。

更多信息,請參見Git Book