Gitには大きなリポジトリがあります。プロジェクトからサブフォルダーを1つだけチェックアウトするジョブをJenkinsで作成するにはどうすればよいですか?
Jenkins Gitプラグイン サポートスパースチェックアウトgit-plugin 2.1.0以降(2014年4月)。この機能を使用するには、git> = 1.7.0が必要です。 「追加の動作」->「スパースチェックアウトパス」の下にあります。
参照:Jira issue JENKINS-21809
Gitの スパースチェックアウト 機能を使用できます。 Gitは引き続きリポジトリ全体をローカルディスクに複製することに注意してください。ただし、圧縮されているため、それほど悪くはありません。
プロジェクトのワークスペースフォルダーのGitシェルを開きます。スパースチェックアウトを有効にします。
git config core.sparsecheckout true
作業ツリーを更新します。
git read-tree -mu HEAD
.git/infoフォルダーにsparse-checkout
ファイルを作成します。そのファイルにチェックアウトするサブフォルダーへのパスを追加します(末尾のスラッシュに注意してください):
folder/to/include/
プロジェクトを再度ビルドします。今回は、ワークスペースフォルダーに表示されるサブフォルダーは1つだけです。
あなただけを使用するカスタムステップを持つことができます
git checkout your-branch -- the/desired/path anthother/desired/path
それをクリアするには、単にrm -rf
作業フォルダを作成し、mkdir workingdir
。このため、上記のコマンドのgitレベルでこのオプションを指定する必要があります。
git --working-dir="/path/to/workingdir" checkout your-branch -- the/desired/path anthother/desired/path
これはすべて、あなたがジェンキンスをどれだけよく知っているかにかかっています。