diffを使用してパッチを作成しようとしていますが、ファイルを作成するときにファイルで使用された行末文字新しいファイルを作成したり、ファイルの変更時に行末を変更することができます。基本的に、私がやっている:diffと新しいファイルを作成するときに間違った行の末尾を使用したパッチまたは行末を変更しました
cp -r dir1 dir3
diff -ruN dir1 dir2 > dir3\patch.txt
cd dir3
patch -p1 < patch.txt
をdir1
とdir2
間のすべての変更が正しく適用され、新規ファイルの行末文字がCR+LF
をデフォルトされることを除いて、dir2
内のファイルは終了とLF
使用した場合でもラインマーカー。また、それらの間の違いが単なる行末の変更であるファイルは、どのような方法でもパッチされません - diffは変更を見ていないようです。
したがって、diff -rq dir2 dir3
を実行すると、Files aaa and bbb differ
の束が得られますが、diff -rwq dir2 dir3
は正常に動作します。
Windows XPではdiff - GNU diffutils version 2.7
とpatch 2.5
からUnxUtils
を使用しています。
パッチに含まれている新しいファイルや変更されたファイルを元のファイルから終了させる方法はありますか?