2017-08-27 82 views
1

我是新創建git掛鉤。我已經成功創建了一個本地git鉤子,但是我很難弄清楚如何在Bitbucket上安裝服務器端鉤子。服務器端掛鉤在Bitbucket

我使用一種叫做外部鉤,使一個外部預receive掛鉤插件嘗試,但結果是我推到位桶被拒絕使用:

遠程:掛鉤外部預收到鉤受阻推 ! [遠程拒絕]主 - >主(預接收鉤拒絕)。

我試過把鉤子放在服務器上的.git文件夾中。但是我沒有找到.git文件夾。我找到了ApplicationData/Bitbucket/bin/git-hooks。我試圖把一個預先接收的鉤子文件放在那裏,但那不成功。它並沒有阻止推向回購,但該文件也沒有執行。

我使用的鉤子/文件非常簡單,所以我不認爲這是問題所在。它有這樣的文字:

#!/bin/sh 
# 

echo 'hi there soldier' 

回答

2

我發現其中添加預先接收或通過將文件到位桶服務器的存儲庫的基礎上後收到鉤。在Atlassian文件夾中,它位於ApplicationData \ Bitbucket \ shared \ data \ repositories \ [repository#] \ hooks \中。

Bitbucket在內部使用數字而不是名稱來跟蹤內部回購,因此在上面用回購編號替換[repository#]。可以發現this way

將pre-receive鉤子放在pre-receive.d文件夾中。將post-receive鉤子放在post-receive.d文件夾中。

掛鉤/文件的名稱應以數字開頭。這決定了鉤子被激活的順序。開始數字至少爲21,因爲文件夾中的默認鉤子以20開頭。您希望在與Bitbucket服務器一起發貨之後激活鉤子。所以預接收鉤子的文件名可以是21_pre_receive。

不要更改該文件夾中的默認掛鉤,因爲需要它們來幫助Bitbucket工作。

更多相關信息,請聯繫here