【发布时间】:2008-12-23 18:57:57
【问题描述】:
在开发人员提交更改后,使用带有 VisualSVN 服务器的提交后挂钩从存储库导出到目录以进行暂存/测试的最简单方法是什么?
【问题讨论】:
标签: svn export visualsvn-server post-commit
在开发人员提交更改后,使用带有 VisualSVN 服务器的提交后挂钩从存储库导出到目录以进行暂存/测试的最简单方法是什么?
【问题讨论】:
标签: svn export visualsvn-server post-commit
在 VisualSVN 服务器管理器 MMC 控制台中执行以下操作:
选择您的存储库
右键单击属性
选择Hooks标签
选择提交后挂钩
点击编辑按钮。在文本框中输入这样的一行:
"%VISUALSVN_SERVER%bin\svn.exe" export https://svn.yourserver.com:4433/svn/YourRepository/Websites/YourWebsite/ C:\inetpub\wwwroot\YourWebsite --quiet --non-interactive --force --username <youruser> --password <yourpassword>
点击确定。
【讨论】:
找到你的SVN服务器安装目录(我有C:\Program Files\VisualSVN Server\bin)。
将一个可执行文件或批处理文件放入其中,然后将 post-commit 挂钩设置为如下所示:
postcommit.exe "%1" "%2"
【讨论】:
如果您安装了svn command-line client,您可以编写一个简单的提交后挂钩脚本,如下所示:
path\to\svn.exe export file:///%1/trunk path\to\where\you\want\to\export\to
我不确定 VisualSVN 服务器提交挂钩对话框是创建 .bat / .cmd 文件还是只是希望运行该命令。如果是第一个,上面的行就足够了。如果是后者,先创建一个.bat文件,里面有上面一行,然后放到对话框里:
cmd.exe /C path\to\your\batfile
【讨论】:
将阅读有关 Cruise Control 与 Subversion 集成的信息——我首先听说过它,但我确实讨厌在其中加入另一个变量。
在发布问题之前查看了 VisualSVN 链接,但它没有解释除了电子邮件通知之外如何使用 VisualSVNServerHooks.exe 执行任何操作。不禁想知道这是否是 VisualSVNServerHooks.exe 支持的唯一功能,因为我无法在他们的网站、文档、谷歌群组、谷歌搜索等上找到任何其他功能的文档。
感谢发帖。
【讨论】: