Linux

顛覆多結帳後送出掛鉤?

  • December 22, 2010

標題聽起來一定很奇怪,但我正在努力實現以下目標:

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;它將列出您可以使用的各種命令/可以獲得的資訊。

引用自:https://serverfault.com/questions/215439