3

ファイルに 5 つのパッチがあり、そのうちの 4 つのパッチがファイルの内容を変更し、新しい行を追加したとします。ただし、単一のパッチ 5 を git ツリーに適用することはできます。なんで?行番号が変わったと思っていたので、行の内容が一致しなくなりました。変更を加えた行を git はどのように判断しますか? 変更の 3 つの行のコンテキストを介して? もっともらしいとは思いません。

ところで、[PATCH 0/5] のような番号ゼロのパッチを生成する方法は? フォーマットパッチは0001からしか生成できないようです。

4

1 に答える 1

1

変更の 3 つの行のコンテキストを介して?

これはそれをgit apply説明する方法です:

<n>各変更の前後で、少なくとも周囲のコンテキストの行が一致していることを確認してください。
周囲のコンテキストの行が少ない場合、それらはすべて一致する必要があります。

そうです、行番号が変更されたとしても、パッチを適用するかどうかを決定する上でコンテキストは依然として重要です。


番号付けの側面については、テストしませんでしたが、コマンド--start-numberのオプションが役立つかどうかを確認してください。git format-patch

--start-number <n>

パッチの番号<n>を 1 ではなく付け始めます。

于 2013-08-05T06:37:08.980 に答える