2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

git mv でファイル名変更をRenameと認識させよう

Posted at

Git管理をしているソースに対して、ファイルの名前を変えなきゃいけない状況が起きることがある。
ソースコードを修正せず、ファイル名を変更するような状況…
例えば、ファイル名を間違えたとか、大文字小文字を間違えたとかそんな話の時だ。

普通にファイル名を変更した場合

エクスプローラーなどで、作業ファイルを直接変更した場合、どうなるか?
下記のようなファイルを、直接別の名前に変更する。

変更前

image.png

変更後

image.png

git statusで状況を見た場合

この状態でgit statusを見ると、以下のように2種類の内容になっています。

  • 変更前のファイルを削除
  • 新しい変更後のファイルを追加

image.png
この場合、今までのレビュー状況であったり、ソースの差分履歴を見ることができなくなってしまいます。
完全に新規のソースで未レビューであればこのままでも問題はないのだが
基本的には、「ファイル名を変更した」というコミットにした方がよい。

git mv コマンドによりRenameとGitに認識させる

こういう状況になった場合は、一度変更を元に戻して
Rename扱いとしてファイル修正する必要がある。

この場合、ファイル変更を認識させる方法として、以下のコマンドを使用する。
git mv 変更するファイル名 変更後のファイル名

こうすると、以下のように「ファイル名を変えました」とGitが認識してくれる。
image.png

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?