Linux
顛覆多結帳後送出掛鉤?
標題聽起來一定很奇怪,但我正在努力實現以下目標:
SVN 倉庫位置:/home/flx/svn/flxdev SVN 倉庫“flxdev”結構:
+ Project1 ++ files + Project2 + Project3 + Project4
我正在嘗試設置一個送出後掛鉤,當我進行送出時,該掛鉤會在另一端自動簽出。
送出後文件明確列出了以下內容:
# POST-COMMIT HOOK # # The post-commit hook is invoked after a commit. Subversion runs # this hook by invoking a program (script, executable, binary, etc.) # named 'post-commit' (for which this file is a template) with the # following ordered arguments: # # [1] REPOS-PATH (the path to this repository) # [2] REV (the number of the revision just committed)
所以我做了以下命令來測試:
REPOS="$1" REV="$2" echo "Updated project $REPOS to $REV"
但是,例如,當我在 Project1 中編輯文件時,這會輸出**“Updated project /home/flx/svn/flxdev to 1016”**
我希望這是:“將項目 Project1 更新為 1016”
有了這個變數,我可以指定每個項目送出後執行不同的操作。如何指定項目參數?
謝謝!
丹尼斯
使用
svnlook
.快速而骯髒的嘗試是:
REPOS="$1" REV="$2" CHANGED_DIRS="`/usr/bin/svnlook -r $REV dirs-changed $REPOS`" echo "Updated paths $CHANGED_DIRS in revision $REV"
您可能想嘗試執行
svnlook help
;它將列出您可以使用的各種命令/可以獲得的資訊。