Git ユニファイド ダイフ & パッチ 生成ツール
ガイド
Git ユニファイド ダイフ & パッチ 生成ツール
元のスニペットと変更後のスニペットを貼り付けて、即座に有効な統合差分を生成できます .patch フォーマット。出力は正しいハunkヘッダー(@@ -L,N +L,N @@)を使用しており、 git apply または標準の patch ユーティリティで無事に適用されます — 手動修正は不要です。
使用方法
- 元のテキストを 原文 テキストエリアに貼り付けます。
- 変更版を 変更済み テキストエリアに貼り付けます。
- オプションで調整します 元のパス と 変更後のパス を設定して、統合差分のヘッダーに使用するファイル名を設定します。
---と+++ヘッダーに使用するファイル名を設定します。 - をドラッグして コンテキスト行 スライダーを調整して、各変更の周囲に表示される未変更行の数(0–10)を設定します。
- 統合差分をコピーまたは
changes.patchとしてダウンロードして、git applyまたはpatch -p1.
機能
- 標準適合統合差分 – 正しいハunkヘッダー、行数、およびコンテキスト処理を含みます。
- 設定可能なコンテキスト – 1つのハunkあたりの周囲のコンテキスト行を0から10まで選択できます。
- カスタムファイルパス – 使用するファイル名を設定して、差分が正しいファイルに適用されるようにします。
a/とb/ファイル名を設定して、差分が正しいファイルに適用されるようにします。 - 統計要約 – 即時 +N / -N 追加および削除行の読み出し。
- ワンクリックダウンロード – パッチを
changes.patchとしてエクスポートし、使用できます。git apply. - ブラウザ内で完全に動作 – 何もアップロードされず、ページが読み込まれた後はオフラインで動作します。
このツールを使用するタイミング
コード変更をパッチとして共有する必要があるとき(たとえば、問題トラッカーに投稿したり、貢献をメールで送ったり、AIが提案した編集を実際のコードベースに貼り付けるとき)にこの生成器を使いましょう。LLMの「前/後」スニペットを実際に適用できるパッチに変換するのに特に役立ちます。
よくある質問
-
統合差分とは何ですか?
統合差分は、2つのファイル間の変更を説明するための標準的なテキストフォーマットです。それは2つのヘッダー行(--- old と +++ new)から始まり、1つ以上のハunkを含みます。各ハunkは@@ -oldStart,oldCount +newStart,newCount @@で始まり、コンテキスト、削除(-)、および追加(+)行をリストします。このフォーマットはGNU diffユーティリティによって普及され、git applyおよびpatchがデフォルトで期待するフォーマットです。
-
git applyは統合差分を使ってどのように動作しますか?
git applyは統合差分を読み取り、それぞれのハunkをワークツリー内の対応するファイルに再現します。ハunkの行番号と周囲のコンテキストを使用して、変更の場所を特定し、追加と削除を行います。もしコンテキストが一致しない場合(ターゲットファイルがわずかにずれている場合)、git applyはパッチを拒否します。ただし、--3wayまたは--rejectなどのオプションを渡すことで、パッチを適用できます。
-
@@ -1,5 +1,6 @@ にある数字の意味は何ですか?
ハunkヘッダーは変更がどこにあり、どの行数をカバーしているかを示します。-1,5は元のファイルセグメントが行1から始まり、5行(削除された行とコンテキスト行を含む)をカバーしていることを意味します。+1,6は新しいファイルセグメントが行1から始まり、6行(追加された行とコンテキスト行を含む)をカバーしていることを意味します。カウントが1の場合、コンマと数字はしばしば省略されます(たとえば、@@ -42 +42 @@)。
-
追加のコンテキスト行はパッチにどう重要ですか?
コンテキスト行は変更の上と下にある未変更行です。パッチツールがターゲットファイル内の変更場所を見つけるためのアンカーを提供します。コードがわずかにずれた場合でも、パッチツールは変更を正確に見つけられます。コンテキストが多ければ(たとえば5または7行)パッチは小さなずれに耐性を持ちますが、パッチサイズも大きくなります。GNU diffのデフォルトの3行は通常、バランスが良いです。
恵 スコアボードが到着しました!
スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!
