Jenkinsfile 内で git fetch を使用しているときに、「SCM からのパイプライン スクリプト」で Jekinsfile を使用すると失敗する

Jenkinsfile 内で git fetch を使用しているときに、「SCM からのパイプライン スクリプト」で Jekinsfile を使用すると失敗する

私は Jenkinsfile を持っており、その中に Java サービスのソースコードを取得するための「git」コマンドがあります。また、git から Jenkinsfile を取得するための「SCM からのパイプライン スクリプト」ジョブも作成しました。しかし、git show などの特定のコマンドを使用してコミット メッセージを検索すると、失敗します。コミット メッセージは、Jenkinsfile 内で取得された git ではなく、メイン パイプラインの git を表示します。

答え1

ついに自分で答えを見つけました。Jenkins を「SCM からのパイプライン スクリプト」で実行して Git から Jenkinsfile を取得すると、その Jenkinsfile で使用したすべての git コマンドが現在の Git フェッチを返しました。前述したように、Jenkinsfile 内では別の git コマンドを使用して Jenkinsfile 内のサービスを取得します。git の git コミット メッセージに到達するには、以下のコマンドを使用しました。

git ログ --format=%H -n 1

関連情報