公司要搭建CI,有這樣一個需求:判斷Git是否有新的提交,如果有的話拉取代碼構建,如果沒有不構建,Jenkins的搭建這里就不贅述了,主要講一下判斷這里。
Jenkins需要安裝插件Conditional BuildStep,地址https://wiki.jenkins-ci.org/display/JENKINS/Conditional+BuildStep+Plugin
配置如下:

執行腳本:
#!/bin/bash if [ ! $GIT_PREVIOUS_SUCCESSFUL_COMMIT ];then echo "GIT_PREVIOUS_SUCCESSFUL_COMMIT is not exists." exit 0 else echo "GIT_COMMIT=[$GIT_COMMIT],GIT_PREVIOUS_SUCCESSFUL_COMMIT=[$GIT_PREVIOUS_SUCCESSFUL_COMMIT]" if [ $GIT_PREVIOUS_SUCCESSFUL_COMMIT == $GIT_COMMIT ];then echo "GIT_COMMIT is equals to GIT_PREVIOUS_SUCCESSFUL_COMMIT,skip build." exit -1 else echo "GIT_COMMIT is not equals to GIT_PREVIOUS_SUCCESSFUL_COMMIT" sh build_using_xctool.sh//這里是有代碼更新的條件下需要執行的代碼,我這里是跑一個腳本 exit 0 fi fi
判斷的條件是本地的Git_Commit跟遠端進行對比,不一致就代表有新的代碼提交,執行操作,否則exit
