0
ファイルがfoo/example.txt
の場合、新しく作成された親ディレクトリに移動されると、gitは新しいファイルを検出していないようです。ディレクトリを検出していないgitディレクトリが別のディレクトリに移動した
mkdir foo/bar
mv foo foo/bar
は、特に、git status
はfoo/example.txt
が削除されたことを示しているが、ではないことfoo/bar/example.txt
作成あります。 git status --ignored
は、ではないにしても、.gitignore
には、foo/bar
が無視されたdirとして表示されます。は、にありません。実際には、ディレクトリの名前を変更しても無視された状態は変わりません。
git mv
を使用するとが発生しません。なぜか分からない。
これは2.13.0
のDarwin C02RW05YFVH6 15.6.0
にあります。
なぜですか?そして、Gitが特別な手順を取らずにこのような変更を常に検出できるようにする設定がありますか? –
これはgitの背後にあるディレクトリを "移動"したことです。ディレクトリを移動した直後に(gitを使用せずに)ステータスがgitにチェックされていれば、「このディレクトリはありません。このディレクトリがあります。それはgitが魚のようなものがあることに気がついたことを認識させるのに十分なはずです。この時点でディレクトリを "追加"した場合、削除についてgitに通知していないため、gitはファイルが "新規"であると考えます。追加した後に古いディレクトリを削除した場合、gitは "aha!"と表示されます。... 2bcont – eftshift0
... "mv;を使用する代わりに、ファイルが..... _or_移動されたことを伝えます。 git mt originaldir bar/newdir''' – eftshift0