cv.cm
全部教程

文字

怎麼比對兩段文字找出差異

你有一份文件、一個設定檔或一條合約條款的兩個版本,要看改了什麼。在這一頁把兩邊都貼上,讀新增和刪除的行,各有計數。什麼都不離開目前分頁。

約 6 分鐘閱讀

今天的結果 逐行 diff:刪除行標 −,新增行標 +,沒變的行原樣,附 +/− 計數和一份可複製的統一 diff。

兩個版本都在手邊再打開文字對比。舊文放左邊,新增的行才讀得順。不上傳。

打開文字對比
目錄
  1. 先決定哪邊是原文

    左框是「原文」,右框是「改後」。只在右邊的行顯示為新增(+),只在左邊的行顯示為刪除(−)。兩邊對調,顏色也跟著反過來。

    原文在左,改後在右:− 行是刪除,+ 行是新增。
    原文在左,改後在右:− 行是刪除,+ 行是新增。
  2. 打開 cv.cm 的文字對比

    兩個空框和結果區已經就緒。不上傳。

    打開文字對比
  3. 貼上兩段文字

    原文貼左邊,新版本貼右邊。一貼上 diff 就出來;上方那一行統計新增、刪除和沒變的行數。

  4. 空白是雜訊時就忽略它

    編輯器重新縮排或把 Tab 換成空白時,勾「忽略多餘空白」,只顯示真正的內容變化。

    「忽略多餘空白」隱藏重新縮排和 Tab 變化,只顯示內容改動。
    「忽略多餘空白」隱藏重新縮排和 Tab 變化,只顯示內容改動。
  5. 讀結果

    每一條改動的行顯示兩次:一次 −(舊)一次 +(新)。移動過的行會在一處顯示為刪除、另一處顯示為新增;diff 不追蹤移動。

  6. 複製統一 diff

    「複製統一 diff」把標準修補檔格式放到剪貼簿,帶 --- 和 +++ 標頭以及 @@ 區塊,可以直接貼進工單、程式碼審查或 `patch`。

常見問題

能免費線上比對兩段文字嗎?

能。cv.cm 在目前分頁裡做 diff。不上傳。

哪邊是原文?

左邊。只在右邊的行是新增(+),只在左邊的行是刪除(−)。

能忽略空白嗎?

能。勾「忽略多餘空白」跳過只有空白的變化。

統一 diff 是什麼?

標準修補檔格式,帶 --- 和 +++ 標頭以及 @@ 區塊,git 和程式碼審查都用。「複製統一 diff」會產生它。

會比對一行裡面的字嗎?

不會。它逐行運作;改過的行顯示為一條刪除加一條新增。