Jenkinsを使用して構成された自動ビルドシステムがあり、Gerritと統合されています。今日のボトルネックの1つは、リポジトリのサイズが原因で、Jenkinsがビルドごとに「gitclone」を完了するのに約3.5分かかることです。「gitarchive」を使用した同じチェックアウトには約12秒かかります。
Jenkinsのgerritプラグインを「gitarchive」を使用するように構成できますか?これにより、ビルド時間が大幅に短縮されます。
変更されていないバージョンのGitプラグインを使用することはできないようですが、私はこれを2つのステップで実行しました。
1) Change SCM to "None" for the particular job.
2) Add a build step at the beginning to checkout using "git archive"
これがステップ2)のサンプルです。
git archive --format=tar --remote=git://host/repo ${GERRIT_REFSPEC} > ${BUILD_ID}.tar && tar xvf ${BUILD_ID}.tar && rm ${BUILD_ID}.tar