ファイル名の指定を明示して、スナップショットから特定のファイルをワーキングディレクトリーに展開する
「ワーキングディレクトリー」に展開するファイル名を指定する際、同名のブランチが存在すると、指定されたファイル名をブランチ名と解釈し、そのブランチを「チェックアウト」します。このような場合、ファイル名の指定を明示して、「スナップショット」から特定のファイルを「ワーキングディレクトリー」に展開します。
ブランチ名とファイル名が重複する例
ブランチ名とファイル名が重複する例です。1.ブランチの確認
ブランチの一覧を表示すると、以下のようになっています。「master」ローカルブランチと「sub」ローカルブランチが存在しています。
2.ワーキングディレクトリーの確認
「master」ブランチをチェックアウトした直後の「ワーキングディレクトリー」の状態です。「ワーキングディレクトリー」内に、ユーザーが作成した「sub」フォルダーがあります。
3.コマンドの実行
ユーザーは、「sub」フォルダーのみ「チェックアウト」しようとして、以下のコマンドを実行しました。4.コマンドの実行結果
「Git」は「sub」ローカルブランチを「チェックアウト」するものだと解釈して、「sub」ローカルブランチを「チェックアウト」しました。5.ブランチの確認
ブランチの一覧を表示すると、「sub」ローカルブランチが現在のブランチになっています。ファイル名の指定を明示する
上記のような場合でも、ファイル名の指定を明示すれば「Git」はファイル名と解釈するようになります。1.ブランチの確認
ブランチの一覧を表示すると、以下のようになっています。「*」マークが付いている「master」ローカルブランチが、現在のブランチであることが分かります。
2.ワーキングディレクトリーの確認
「master」ブランチをチェックアウトした直後の「ワーキングディレクトリー」の状態です。「ワーキングディレクトリー」内に、ユーザーが作成した「sub」フォルダーがあります。
ここでは例として、「sub」フォルダーを削除し「ステージングエリア」から「sub」フォルダーを「チェックアウト」します。
3.コマンドの実行
コマンドのオプションは、以下のオプションを指定します。オプション | 補足 |
---|---|
-- | 複数のファイル名を指定する場合でも、 このオプションの記述は1つでよいです。 |
「端末」から、以下のコマンドを実行します。
コマンドの詳細は、「スナップショットから、特定のプロジェクトのファイルをワーキングディレクトリーに展開するコマンドの説明」を参考にしてください。
ポイントは、赤字の箇所です。
git checkout -- sub