2015-04-30 181 views
2

所以我用this方法來訪問git serverside hook內的回購商的名稱。有沒有辦法訪問分支名稱?git post hook中的分支名稱

意圖是,每當有人推到這個裸回購,一個鉤子將觸發它調用另一個腳本,並傳遞迴購的名稱(已經做到這一點)以及剛推動的分支的分支名稱。

回答

1

正如在「how can git post-receive hook get name of repo it is running on?」提到,後收到鉤可以從多個分支接收提交:

#!/bin/bash 
while read oldrev newrev refname 
do 
    branch=$(git rev-parse --symbolic --abbrev-ref $refname) 
    if [ "master" == "$branch" ]; then 
     # Call your script 
    fi 
done 

您的腳本可能最終會被稱爲多個倍。

+0

$ branch變量是否獲取分支的名稱?我似乎無法迴應它(沒有if語句)。 – derpy

+0

@derpy是的,它的確如此。回聲不起作用,請嘗試將其重定向到文件以進行測試。 – VonC

+0

這就是我想要的。如果我從你發佈的腳本中取出if和fi行,並用echo $ branch>/some/path替換它們,我什麼也得不到。 – derpy