2011-12-13 94 views
-2

我的项目需要执行,而不是shell脚本perl程序执行pre-commit钩子......如何继续他们....谢谢PERL脚本作为预提交钩子在SVN

+2

你没有详细的方式提供多少。而且,你显然甚至没有看到Subversion中的pre-commit.tmpl钩子。这给你一个例子,说明如何从'pre-commit'脚本执行一个Perl脚本。 –

回答

0

启动的Perl来自shell脚本的脚本。

+0

不知道为什么有人会这样做。这实际上是将Perl脚本作为预提交钩子执行的标准方式。你修改'pre-commit'来执行你的Perl脚本。哎呀,'pre-commit.tmpl'钩子就是一个例子。 –

+0

但是,为什么不直接让'pre-commit'来执行你想要执行的Perl脚本呢? – reinierpost

0

调用而不是调用一个shell脚本的Perl脚本。

1

Subversion会自动运行在Windows上呼吁在Linux/Unix/Mac的pre-commitpre-commit.bat任何脚本。

你可以做两件事情之一:

  • 重命名你的Perl脚本pre-commitpre-commit.bat。如果你在Linux/Unix上,你需要确保脚本的第一行是类似于#! /usr/bin/env perl。这将在调用脚本时调用Perl解释器。在Windows上,您可以运行pl2bat命令将Perl脚本转换为Windows批处理器可以运行的东西。
  • 大多数人简单地改变他们的pre-commit脚本来执行Perl脚本。您只需将perl your.script.name.pl放入pre-commit脚本中即可。如果你在Unix上,你可以简单地把your.script.name.pl放在脚本中,它应该可以工作。