第07回: git rmとgit mv — 削除や移動も「Gitに認識させながら」進める

章: 第2章: 履歴を読み解く

ファイル操作はOSだけで完結しない

エディタやFinderでファイルを削除・移動すること自体はできます。しかしGit管理下では、それだけでは「Gitにどう認識されるか」まで意識する必要があります。

git rmgit mv は、ファイル操作とGitの状態変更を一緒に行うためのコマンドです。

git rm の役割


git rm old-file.php

これを実行すると、

  • ファイルが作業ディレクトリから削除される
  • 削除がステージされる

という2つが一度に起きます。

単にファイルを消しただけでなく、「この削除を次のコミットに含める」という状態まで進むのがポイントです。

git mv の役割


git mv old-name.php new-name.php

これで、ファイル名変更や移動をGitにわかる形で進められます。

実際にはGitは内容差分から移動を推測することもありますが、操作意図を明確にする意味でも git mv を使う方がわかりやすい場面は多いです。

よくあるパターン

やりたいこと コマンド
Git管理下のファイルを削除したい git rm ファイル名
Git管理下のファイル名を変えたい git mv 旧名 新名
ディレクトリごと移動したい git mv 旧ディレクトリ 新ディレクトリ

操作後は必ず git status を見て、Gitが意図通り認識しているか確認しましょう。

実務で大事な視点

削除や移動は、あとから見たときに影響範囲が大きい変更になりやすいです。

そのため、

  • 本当に削除してよいか
  • 参照箇所は残っていないか
  • 移動後に読み込みパスは壊れないか

まで意識して扱う必要があります。

Gitコマンド自体は短くても、判断は軽くありません。

チェックポイント: 削除・移動の後は必ず git status と必要なら git diff --staged で確認する習慣を持ちましょう。

まとめ & 次のステップ

  • git rm は削除とステージを同時に行う
  • git mv は移動・リネームをGitに認識させながら行う
  • 操作後は git status で確認する
  • 削除や移動は影響範囲の確認が重要
  • コマンドよりも「何を壊しうるか」を意識する

次回はブランチの基本を扱います。 本番コードを壊さずに作業を分けるための考え方を押さえていきましょう。

Related Articles