たとえば、2つのファイルがある場合:
file1:
This is file 1
およびfile2:
This is file 2
次のコマンドでパッチを作成します。
diff -u file1 file2 > files.patch
結果は次のとおりです。
--- file1 Fri Aug 13 17:53:28 2010
+++ file2 Fri Aug 13 17:53:38 2010
@@ -1,1 +1,1 @@
-This is file 1
+This is file 2
次に、patchコマンドを使用してこのパッチをSolarisに適用しようとすると、次のようになります。
patch -u -i files.patch
ハングアップします:
Looks like a unified context diff.
File to patch:
1.統合された差分でSolarisネイティブパッチコマンドを使用する方法はありますか?
2.統一フォーマットを適用できない場合、どの差分フォーマットが最も移植性が高いと考えられますか?
更新:
質問の最初の部分で答えを見つけました。2番目のファイル(この場合はfile2 patch
)が最初のファイル(file1)と同じフォルダーに存在する場合、Solarisでハングするようです。たとえば、次の非常に一般的な差分:
--- a/src/file.src Sat Aug 14 23:07:29 2010
+++ b/src/file.src Sat Aug 14 23:07:37 2010
@@ -1,2 +1,1 @@
-1
-
+2
非常に一般的なパッチコマンドでは機能しません:
patch -p1 -u -d a < file.patch
次の差分(2番目のファイルの名前が変更されていることに注意してください):
--- a/src/file.src Sat Aug 14 23:07:29 2010
+++ b/src/file_new.src Sat Aug 14 23:07:37 2010
@@ -1,2 +1,1 @@
-1
-
+2
完璧に動作します。
私の質問の2番目の部分については、以下の受け入れられた回答を参照してください。