kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu Git その104 - スナップショットから、プロジェクトのファイル群をワーキングディレクトリーに展開する・ローカルブランチをチェックアウトするコマンドの説明(git checkout)

スナップショットからプロジェクトのファイル群をワーキングディレクトリーに展開する

  「git checkout」コマンドは、「スナップショット」からプロジェクトのファイル群を「ワーキングディレクトリー」に展開するコマンドです。

  また、「スナップショット」からプロジェクトのファイル群を「ワーキングディレクトリー」に展開することを、「チェックアウト」といいます。

  「git checkout」コマンドの機能を大別すると、以下のようになります。

  • ローカルブランチをチェックアウトする 
  • コミットオブジェクトをチェックアウトする 
  • ローカルブランチを作成し、作成したローカルブランチをチェックアウトする
  • スナップショットから、特定のプロジェクトのファイルをワーキングディレクトリーに展開する
  • ファイルの差分を作成し、ワーキングディレクトリーのファイルに差分を適用する

  クリーンとダーティー

     「スナップショット」から展開したプロジェクトのファイル群は、ユーザーがファイルを編集しない限り、「スナップショット」に格納されているファイルの内容と同じ内容になります。
    この状態のことを、クリーン(Clean)な状態と言います。

    一方、ユーザーがファイルを編集し、「スナップショット」に格納されているファイルの内容と異なる状態のことを、ダーティー(Dirty)な状態と言います。

    ダーティー(Dirty)な状態でコミットを行うと、「スナップショット」が作成され、編集内容が「スナップショット」に保存されます。
    すなわち、クリーン(Clean)な状態になります。

    簡潔に言うと、いつでも「スナップショット」から編集後のファイルを取り出せる状態がクリーンな状態です。

  チェックアウトはクリーンな状態で行う

    基本的に「チェックアウト」はクリーンな状態で行います。
    これは、「チェックアウト」を行うと編集内容が破棄されてしまうためです。

    もし編集内容を破棄しても良い場合は、ダーティーな状態で「チェックアウト」を行うこともできます。

ローカルブランチをチェックアウトするコマンドの説明

  「ローカルブランチ」を「チェックアウト」するコマンドの説明です。
  「チェックアウト」を行うと、「HEAD」はコマンドに指定されたブランチを指すように変更されます。

コマンドのフォーマット

  コマンドのフォーマットは以下のようになります。

git checkout <オプション> <ローカルブランチ名>

  基本的な使い方は、「ローカルブランチをチェックアウトする」を参考にしてください。

オプション

  オプションの一覧です。
  どのオプションも省略可能です。

  出力する情報の抑制(-q, --quiet)

    メッセージなど、コマンド実行時に出力する情報を抑制します。

  強制的にチェックアウトする(-f, --force)

    デフォルトでは、「ワーキングディレクトリー」内に、「編集されたファイル」や「ステージされたファイル 」が存在する場合、「チェックアウト」に失敗します。
    「チェックアウト」をダーティーな状態で行うことはできません。

    しかしこのオプションを指定すると、ダーティーな状態でも強制的に「チェックアウト」を実行します。

    このオプションの使い方は、以下を参考にしてください。

  • ローカルブランチを強制的にチェックアウトする 
  • ワーキングディレクトリー内で行った変更を全て破棄する

  ワーキングディレクトリーとローカルブランチをマージする(-m, --merge)

    「ワーキングディレクトリー」内の変更されたファイルと、ローカルブランチ名で指定した「ローカルブランチ」をマージします。
    マージは3ウェイマージで行われます。

    このオプションの使い方は、「ローカルブランチをチェックアウトし、ワーキングディレクトリーとローカルブランチをマージする」を参考にしてください。

ローカルブランチ名

  「チェックアウト」するローカルブランチ名を指定します。

  このオプションは省略できます。
  このオプションを省略すると、「HEAD」が指すブランチが指定されたものとして扱われます。

  ブランチの情報を表示する

    このオプション含め、すべてのオプションを省略すると、「HEAD」が指すブランチとそのブランチがトラッキングしているブランチのコミット回数の差分を表示します。
    また、「ワーキングディレクトリー」で変更されたファイルの一覧が表示されます。


    この場合、「チェックアウト」は行われません。


Git
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Ubuntu 26.04 その68 - Ubuntu 26.04.1 LTS がリリースされました・ディスクイメージのダウンロード
    Ubuntu 26.04.1 LTS リリース 2026年8月27日、Ubuntu 26.04.1 LTS がリリースされました。
  • Linux Mint その292 - Linux kernel 7.0 採用の Linux Mint 22.3 リリース・システム管理ツールにカーネル管理機能追加など
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Linux その422 - GNOME Boxes の再構築と未来・Flatpak のみの提供やモダンな機能の実装など
    GNOME Boxes の再構築と未来 GNOME Boxes の再構築と未来が以下で紹介されています。
  • Kubuntu その117 - Kubuntu 26.04 LTS にもっと手厚いサポートを・最高の信頼性を誇る KDE 搭載ディストリビューションを目指して
    最高の信頼性を誇る KDE 搭載ディストリビューションを目指して Kubuntu 26.04 LTS に手厚いサポートが導入されました。
  • Linux その421 - GNOME Shell のデザイン構想と長期的な見通し
    GNOME Shell のデザイン構想と長期的な見通し GNOME Shell のデザイン構想と長期的な見通しが、以下で紹介されています。
  • Linux その420 - KDE Plasma で実装予定の新機能や改善・UI レイアウトの調整やリモートデスクトップの改善など
    KDE Plasma で実装予定の新機能や改善 KDE Plasma で実装予定の新機能や改善を紹介します。
  • Ubuntu 24.04 その96 - Ubuntu 24.04.5 LTS のリリース日変更
    Ubuntu 24.04.5 LTS のリリース日変更 Ubuntu 24.04.5 LTS のリリース日が変更されました。
  • Ubuntu 18.04 その195 - PolicyKitにクラッシュや権限の昇格など複数の脆弱性・今すぐアップデートを
    PolicyKitの脆弱性 2018年7月16日、クラッシュや権限の昇格など複数の脆弱性に対応した「PolicyKit」がリリースされました。
  • Linux その426 - GNOME 向けアプリとアップデートの紹介・AI アシスタントアプリやメールスイートなど
    GNOME 向けアプリとアップデートの紹介 GNOME 向けアプリとアップデートの紹介です。
記事のピックアップ
オプション