[英]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.