繁体   English   中英

如果在Jenkins合并前后有某些更改,则触发脚本

[英]Trigger script if there are certain changes before and after a merge on Jenkins

如果存在对master分支的合并提交(其中更改了配置文件中的特定行),我试图让Jenkins触发特定的脚本。 在master上检查合并提交很容易。 问题是我不知道如何检查合并前后的差异。

我一直在尝试使用git diff在脚本中执行if语句。 我发现最好的例子似乎接近正确的差异是:

git diff -G'changed_field=' HEAD^ HEAD -- config.cfg

由于很难从作业的控制台输出中确切地看到Jenkins中发生了什么,因此我能确定的是,由于我没有看到任何输出,因此没有选择更改。 当我在本地分支上运行diff以检查我对master的最后2次提交时,diff确实起作用。

如果HEAD是合并提交,则至少可以执行以下操作:

git show @
# or, more precisely:
git show @:/config.cfg

git show手册页

对于提交,它将显示日志消息和文本差异。
它还以git diff-tree --cc产生的特殊格式显示合并提交。

这将显示此合并之前的内容以及添加/删除的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM