1. ホーム
  2. git

[解決済み] Gitでファイルの移動/リネームを行い、その履歴を維持することは可能でしょうか?

2022-03-19 21:21:58

質問

Gitでプロジェクトのサブツリーの名前を変更したり移動したりしたいのですが、サブツリーを

/project/xyz

になります。

/components/xyz

もし私がプレーンな git mv project components のコミット履歴は、すべて xyz project は失われてしまいます。履歴が維持されるようにこれを移動させる方法はあるのでしょうか?

解決方法は?

Git はコミット時に操作を持続させるのではなく、リネームを検出します。 git mv または mv は重要ではありません。

は、その log コマンドは --follow は、リネーム操作の前に履歴を継続する引数であり、ヒューリスティックを用いて類似のコンテンツを検索する。

http://git-scm.com/docs/git-log

全履歴を調べるには、次のコマンドを使用します。

git log --follow ./path/to/file