Visual SVN Server:前/后提交挂钩指南

时间:2011-04-23 09:24:12

标签: rsync visualsvn-server post-commit-hook

这可能是最好的维基,在这里给出评论: Share common / useful SVN pre-commit hooks

我在Windows 7计算机上使用Visual SVN 2.1.7。我们有来自不同国家/地区的开发人员,我们可以通过运行更改的本地副本来管理代码更改,然后通过ftp手动上传到正在处理的每个网站的服务器。

这是一个非常耗时的过程,但比修复现场网站上的错误耗时更少,因此这是朝着正确方向迈出的一步。

在Visual SVN网站上,它提到了提交后提交和预提交挂钩,但未能显示可以访问的位置,即使它提到有GUI。在安装的版本中没有GUI或甚至选项的迹象,因此我无法首先找到访问它的位置。

假设可以通过脚本来完成,我已经用Google搜索并找到了一些关于它可能在哪里以及如何完成的指导,但它似乎比我希望的要复杂得多。

有没有人有任何经验或指导,包括示例脚本,如何在Windows上执行以下任务(未安装perl)?

a)创建预提交命令/文件并将其执行附加到存储库/提交给它 b)创建一个提交后命令/文件并将其执行附加到存储库/提交到它

在我的情况下,一个特定的任务: c)如何在可以将提交文件发送到远程CentOS共享托管服务器的PC上安装本地Visual SVN(不能在这些机器上安装VPS / Dedi或云托管和SVN)

这是一个很棒的软件,但它似乎是高效率的障碍,因为它不清楚你需要问什么问题或在哪里看。希望你能为那些陷入困境的人提供一个更好的起点。

谢谢:)

1 个答案:

答案 0 :(得分:2)

访问钩子:

  

1.启动VisualSVN服务器管理器

     

2.打开存储库的属性

     

3.选择Hooks选项卡

     

4.编辑所需的钩子

挂钩是常规而不是基于配置。你不必“勾”起来。创建一个pre-commit挂钩,并在提交之前运行一个钩子。创建一个post-commit钩子,你有一个在提交后运行的钩子。

以下是您在提交后脚本中可以执行的操作的步骤:

您将repo路径和修订提交为post-commit钩子的参数,因此请使用repo=%1rev=%2之类的内容来获取这些值。

提交后复制文件的一种方法是在服务器上有一个工作副本,在提交后提交挂钩后在此工作副本上发出svn update,然后复制文件。您可以通过使用svnlook changed获取更改的文件来有选择地复制文件。 svnlook需要修订并使用您之前设置的rev变量。

脚本本身可以使用任何语言。