2012-03-14 36 views
2

我如何,一個Mercurial庫服務器上,找出一個changegroup當前倉庫URL或至少名稱(子路徑) - 或有點相當於 - 鉤?我在IIS上運行HgWeb。水銀changegroup鉤:倉庫URL

$HG_URL返回push ERS ​​URL,不接收倉庫的。 $HG_SOURCE只返回serve

語境:我想寫一個changegroup鉤詹金斯使用/mercurial/notifyCommit?url=<url>告訴詹金斯執行SCM民意調查顯示,如果我不能得到這個工作,我要爲做約50捲曲電話(一次每changegroup觸發服務器上的每個存儲庫),然後記得hgweb.config保持這個列表中的所有永恆。

回答

1

每噸的答案,這是我結束了做,因爲我是在Windows上:

changegroup.jenkins.cmd

@for /f "delims=\" %%a in ("%CD%") do @set TOPMOST=%%~nxa 
@curl.exe "http://jenkins/mercurial/notifyCommit?url=http://hgweb/%TOPMOST%" -s -S 
2

你的鉤子將特定庫的根文件夾內被執行,你可以在bash使用下面的命令來獲得當前文件夾名稱:

${PWD##*/} 
+0

有了這些知識,看到了自己的swer! – 2012-03-16 09:34:55