Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
uberSVN分支后提交钩子_Svn_Jenkins_Redhat_Post Commit Hook_Ubersvn - Fatal编程技术网

uberSVN分支后提交钩子

uberSVN分支后提交钩子,svn,jenkins,redhat,post-commit-hook,ubersvn,Svn,Jenkins,Redhat,Post Commit Hook,Ubersvn,我们正在使用安装在linux上的uberSVN。在存储库“R”中,我们有不同的分支,我需要触发jenkins作业以提交特定分支“B”。在…repository/R/hooks/中有一个名为post commit的文件。文件内容如下: REPOS="$1" REV="$2" wget "http://jenkinsurl/job/project_r/build?tokten=r_token" wget "http://jenkinsurl/job/project_r_b/build?tokte

我们正在使用安装在linux上的uberSVN。在存储库“R”中,我们有不同的分支,我需要触发jenkins作业以提交特定分支“B”。在…repository/R/hooks/中有一个名为post commit的文件。文件内容如下:

REPOS="$1"
REV="$2"

wget "http://jenkinsurl/job/project_r/build?tokten=r_token"
wget "http://jenkinsurl/job/project_r_b/build?tokten=r_b_token"
只要提交了repo,上面的脚本就会调用wget。另一方面,我想触发“分支作业”当且仅当分支“B”上存在提交而不是所有存储库时。jenkis的url如下:

REPOS="$1"
REV="$2"

wget "http://jenkinsurl/job/project_r/build?tokten=r_token"
wget "http://jenkinsurl/job/project_r_b/build?tokten=r_b_token"

正确的方法是什么?

您可以在Jenkin作业中使用
轮询SCM
选项。将轮询间隔设置为每分钟
***
,也可以将轮询间隔设置为5或10分钟。每次投票时,这将检查您的svn分支是否有变化。如果有更改,则会触发生成,否则不会触发任何更改。您可以在项目配置页面的选项卡
生成触发器

下找到此选项,您可以调用此选项以获取提交修订中的更改路径。将此命令的输出传送到
grep
并搜索“分支/b”。如果命令的输出具有“/branchs/b”,则运行作业。否则退出

检查此问题以获取示例代码: