は、我々は、新しいブランチrefactorを開始し、PRを押しリベースの削除されたファイルから変更を適用するにはどうすればよいですか?
// file
Foo
Bar
で開始したとします。
新しいファイルを新しいファイルfoo
とBar
に新しいファイルbar
に移動します。
は今、マスターは
// file
Foo123
Bar
を変更し、PRは現在、マージ競合を持っています。 私はrebaseを行うときに私はまた、矛盾を取得し、これはそれがmagitに見える方法です。
Foo
がFoo123
に変更されたことを知りますか?このような単純なケースでは、難しくはありませんが、file
は数千のlocであり、PRは1ヶ月間そこに座っており、他の人はfile
に変更されていると考えてください。
削除されたファイルに遭遇したとき、私のapporachは非常にエラーを起こしやすいので、ファイルに触れたすべてのコミットを見て、それに応じてコピーをコピーしてからgit rm file
のファイルを削除しますが、 。確かに良い方法があるはずですか?
'git show'は' git diff'を実行し、 'git diff'は名前の変更やコピーを検出します。 Gitのバージョン2.9以降ではデフォルトでrename-findingが有効になっていますが、コピールーディングはデフォルトでは常に無効になっています。 'diff.renames'と' diff.renameLimit'を設定してデフォルトの 'git diff'名前変更の振る舞いを変更することができます.Git(1.5.something)と同じくらい前に戻ります。 – torek