Skip to content
Latchkey

GitHub Actions の actions/checkout とは?

actions/checkout はリポジトリを runner にクローンします。ほとんどの場合、workflow の最初の step になります。

runner は空の状態で始まります。build やテストの前に、コードをマシン上に置く必要があります。actions/checkout は、正しい commit で repo をクローンする公式 action です。

概要

実行の commit を使ってリポジトリを runner にチェックアウトする GitHub 公式の action です。内部で自動トークンによる認証を処理します。

Checking out code
steps:
  - uses: actions/checkout@v4
  - run: ls -la

仕組み

デフォルトでは、実行をトリガーした commit の shallow クローン(depth 1)を runner の workspace に行います。後続の step はそれらのファイルを操作します。

よく使うオプション

  • fetch-depth: 0 で完全な履歴を取得(tag や diff 用)。
  • ref: で特定の branch や tag をチェックアウト。
  • submodules: true でサブモジュールを含める。

なぜ重要か

checkout がなければ、workflow は操作するコードを持ちません。オプション、特に fetch depth を理解しておくと、バージョニングや変更ファイル検出での予期しない挙動を避けられます。

関連する概念

Marketplace で最もよく使われる action であり、GITHUB_TOKEN を使って自動的に認証します。

重要なポイント

  • actions/checkout は repo を runner にクローンします。
  • デフォルトでは、実行をトリガーした commit の shallow クローンを行います。
  • 完全な履歴が必要なときは fetch-depth: 0 を使います。

関連ガイド