正在載入工具…

看清變更,再決定分享什麼。GIT DIFF / 07

留下要討論的,排除不該分享的。

檢視檔案與 hunk、回到來源行。摘要只數實際變更,不猜測改動原因。

資料不上傳預設不選取離開即清除

01 / 貼上 Git unified diff

僅支援 git diff --git 子集,不讀取 repo、不執行 patch。每份最多 1,000,000 UTF-16 字碼單元、20,000 實體行、每行 20,000 字碼單元(不是 bytes)。原始輸入與檢視內容仍可能含秘密,請留意螢幕分享。

貼上 diff,或先載入合成示範。

看見的差異,不等於改動意圖。

檔案類型、hunk 數與增刪行數都由輸入計算;不使用 AI、不推測原因、影響或執行成功。結果不完整時只列「已觀察」統計,並保留來源位置。原始 diff 行號是貼上內容的實體行;舊/新行號則是被修改檔案兩側的位置,兩者不同。

支援格式、限制與匯出規則
  • 只支援 diff --git a/path b/path 區塊、相符的 --- / +++ 與 @@ hunks;/dev/null 表示不存在的一側。不支援 plain unified、combined diff、copy、timestamp 或任意前言,不猜測格式。
  • 辨識 index hash、new/deleted file mode、成對 old/new mode、similarity index 與 rename from/to;標頭只可出現一次並先於 hunk,路徑與 metadata 必須一致。新增/刪除認證需標準 mode;無 hunk 的空白新增/刪除不認定完整。純 rename 須 100% similarity 且無內容 index;純 mode 變更須成對且無內容 index。
  • 無引號路徑不得含空白。含空白需 Git C 引號,支援 a、b、t、n、v、f、r、反斜線、雙引號與三位 octal UTF-8 bytes;拒絕無效 UTF-8、NUL 與未知跳脫。匯出重新引用路徑,避免換行注入標頭。
  • Hunk 為 @@ -start[,count] +start[,count] @@,省略 count 視為 1。數字為 0–1,000,000,000 安全整數,start=0 時 count 也須為 0;驗證實際計數、範圍順序與無重疊,且至少有一行增刪。no-newline marker 需緊接該側最後一行,不計入內容行數。
  • 二進位/NUL 不解碼;未知標頭、無效 hunk、截斷與不一致會明示不完整。超限或 NUL 只回診斷、不保留部分檔案。支援 LF/CRLF,統一為 LF;最後一個結尾換行不計入實體行數,也可不帶結尾換行。
  • 完整檔案才可匯出;原始輸入有其他不完整區塊時,仍可明確選取其中的完整檔案。內容檔需檔案與 hunk 都選取,純 rename/mode metadata 檔只需明確選檔案。預覽與下載都只使用選取 helper 重建結果,不匯出全份原始 report 或全域診斷。mode-only 摘錄不包含原 mode 變更;新增/刪除摘錄省略 mode,不保證可重解析或套用。
  • 檔案/hunk ID 依當次來源行號建立,不是跨版本身份。任何編輯或重跑都清空選取;變更選取即丟棄舊預覽,須重新預覽才能下載。原始檢視保留整份已解析 hunk 文字;匯出不等於已匿名化。

免登入、不上傳、不永久保存、不產生分享 URL。清除、重新整理或離開會丟棄輸入與選取;下載是你主動儲存選取摘錄的例外。此工具不會套用 patch 或執行輸入。

Cloudflare Web Analytics 僅統計頁面瀏覽與效能;工具輸入、檔案內容與處理結果留在你的裝置。