0

首先,我在 Windows 7 上,如果这有所不同,请使用 Cygwin。我正在使用 Dropbox 作为我的 svn 存储库,我可以在其中管理多个项目。每次提交每个项目后,我想更新文件夹changelog.txt中的public_root文件,如果可能,提交在提交后脚本之后所做的更改。

post-commit位于/hookssvn repo 文件夹下的文件:

#!/bin/sh

REPOS=$1
REV=$2

/usr/bin/svnlook info $REPOS >> $REPOS/changelog.txt

实际上它将一个changelog.txt放入 svn repo 文件夹中,我想要将它放在我签出项目的文件夹中(对不起,因为不知道正确的术语来描述)

有什么建议吗?

4

1 回答 1

1

$REPOS指的是整个存储库的位置,而不是签出的副本。Subversion 服务器不可能知道客户端将写入数据的位置。

提交时也无法修改存储库本身(如修改文件)。

如果您是存储库的唯一用户并且您总是在同一个沙箱中检查内容,您可以在提交后挂钩中硬编码该位置

/usr/bin/svnlook info $REPOS >> /the/location/of/my/sandbox/changelog.txt
于 2013-01-03T11:14:26.660 回答