104

デフォルトの名前変更制限は 100 であり、config を使用してこの値を増やすことができることを認識しています。diff.renamelimit config

私が心配しているのは、この構成がセットアップされていない場合、間違ったマージや不足しているコードがあるのでしょうか? 大きな変更がある 2 つのブランチをマージ (git merge) しようとしています。

誰かがこの構成設定についてもっと光を当てることができますか?

4

2 に答える 2

68

あなたのコンテンツは安全です。

私が理解しているように、実際にはファーストクラスの操作の概念はありません (大きなgit3つのDVCS のみ) 。ただし、そのような操作中に変更されるコンテンツを追跡できるため、ヒューリスティックを使用して、 an および a が実際にいつ であるかを推測できます。これには、実際に記録されたものを表示するだけでなく、より多くの作業が必要になるため、「...必要な O(n^2) 処理時間が n は潜在的な名前変更/コピー ターゲットの数である」と説明されています。関係するファイルが多すぎる場合は試してはいけません。あなたが言及した設定は、そのしきい値を制御するだけです。renamebzrmvaddrmgitaddrmmvgitgit-diff

于 2011-03-03T13:53:35.743 に答える
64

これが誰かに役立つ場合、私は1つのブランチにたくさんのファイル(数千ではないにしても数百)を持っていましたが、それらはまだ他のブランチにはありませんでした. ランニング

$ git config merge.renamelimit 15345

マージ時に以下のエラーが発生しました

$ git merge master
.
.
.
warning: inexact rename detection was skipped due to too many files.
warning: you may want to set your merge.renamelimit variable to at least 15345 and retry the command.
于 2018-03-21T09:53:38.730 に答える