差分ファイルの中身を見ると以下のような感じのデータが含まれています。
diff --git a/test1/test2/test.bin b/test1/test2/test.bin new file mode 100644 index 0000000000000000000000000000000000000000..<ハッシュ値> GIT binary patch literal <数値> <複数行のバイナリファイルのデータ> literal 0 HcmV?d00001バージョン管理にgitを使っていないのでどうしたものかと調べいき、
$ git apply < <差分ファイル>をローカルで実行すればいいことに行き着きました。
今回はたまたま新規ファイルだったので、一行目を
diff --git a/test.bin b/test.binに変更して空のディレクトリで先のコマンドを実行すると
そのディレクトリに"test.bin"が現れました。
なお、差分ファイルは"HcmV?d00001"の次にある空行も意味があるみたいです。
ないと
error: corrupt binary patch at line <行数>: HcmV?d00001とかいって怒られます。
ついでですが、パッチを作るには
$ git diff --binary p<元のファイル> <変更したファイル> > <差分ファイル>とすればバージョン管理関係なく汎用ツールとして使えます。
"--binary"を外せば普通のdiffっぽく動きます。
0 件のコメント:
コメントを投稿