タブが空白に変わった行(壊れた入力)
メールなどでタブが空白に変わり、A の行が読めなくなった例です。読める行が 0 件になるため、エラーで貼り直しを促します。
入力
A の git diff --name-status の出力
M src/a.js
B の git diff --name-status の出力
M src/a.js
結果
エラー 1 件・警告 1 件・情報 0 件
指摘(エラー・警告・情報)
- 警告 A の 1 行 「M src/a.js」は --name-status の状態として読めない行です(状態の文字のあとにタブでパスが続く形)。この行は比べません。
- エラー A 読める行がありません。「M<タブ>src/a.js」のような形で貼り付けてください。
比較表
出力はありません(指摘の一覧をご覧ください)。
検算(この結果になる理由)
「M src/a.js」はタブがなく、状態の文字とパスが分かれません。A に読める行がないので、警告と、貼り直しを促すエラーが出て、表は出力されません。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- --name-status の出力はファイル名と状態だけで、変更された行の内容は含みません。同じファイルを両方で変えていても、行が衝突するかどうかは判定できません。
- パスは新しい側のキーで突き合わせるため、片方で名前変更、もう片方で旧パスを変更した場合は、別のパスとして並びます。警告の対象にならないことがあります。
- git の core.quotePath による引用符つきのパスは展開せず、そのままの文字で比べます。-z の出力(NUL 区切り)には対応していません。
ご利用にあたって
- この比較は衝突の見当をつけるためのものです。実際の衝突はマージしてみないと分かりません。
- ブランチ名・ファイル名は端末の外へ送信されませんが、貼り付ける画面の取り扱いには注意してください。