浅いチェックアウトの深さ - CI/CD用語集の定義
浅いチェックアウトの深さとは、CIチェックアウトがいくつのcommitを取得するかであり、fetch-depthのデフォルト値1は最新のcommitだけをcloneします。
浅いチェックアウトの深さは、CIチェックアウト中に取得される最近のcommitの数であり、fetch-depthで制御されます。深さ1(actions/checkoutのデフォルト)は、速度のために先端のcommitだけをcloneします。
浅いcloneはチェックアウトを高速化しますが、履歴を必要とするツール(changelog、git describe、blame)は、より深い取得または完全な取得を必要とします。
増やすべきとき
base branchに対してdiffを計算したり、versionタグを生成したりするときは、fetch-depth: 0を設定してすべての履歴を取得します。そうでなければ、時間と帯域を節約するためにデフォルトの1のままにします。
関連ガイド
Runner Work Directory - CI/CD Glossary DefinitionRunner Work Directory: The runner work directory is the folder on a CI runner where the repository is checked…
Sparse Checkout Filter - CI/CD Glossary DefinitionSparse Checkout Filter: A sparse checkout filter limits a CI checkout to specific paths of a repository inste…