toolfree

文字比對

逐行比對兩段文字,清楚看出新增與刪除的內容,可忽略大小寫或空白,也可只顯示有差異的行。全部在瀏覽器中執行。

在你的瀏覽器中執行

結果怎麼看

兩邊的行會先用 git diff 所使用的同一套演算法對齊,再以單欄顯示:刪除的行標 -,新增的行標 +,沒有變動的行不標記。左側兩個數字分別是原始版本與修改後版本的行號——這正是告訴你「左邊第 40 行就是右邊第 37 行」的依據。

被修改過的行會顯示成先刪除、再新增。逐行比對沒有「修改」這個概念:一行要嘛相同,要嘛不同。

忽略空白

當畫面上滿是看起來一模一樣卻被標為差異的行時,就該打開這個選項。常見原因有:

開啟後,比對會在去除首尾空白、把連續空白視為一個之後才進行,畫面上顯示的仍是你貼上的原文。

演算法為什麼重要

單純從第一行開始一對一比較很容易,但沒有用:在最前面插入一行,後面每一行都會被判定為不同。改成 尋找最長共同子序列——也就是在兩邊都出現、順序也相同的最大集合——就只會回報那一行新增,其餘保持 不變。

本頁採用 Myers 演算法,成本取決於兩段文字有多「不同」,而不是有多長,所以兩份幾乎相同的千行檔案 可以瞬間比對完成。如果兩段文字幾乎毫無共通之處,就不存在有意義的對齊方式,結果會以整段替換呈現。

你的資料只留在這裡

兩段文字都在你的瀏覽器中比對,不會上傳。在貼上兩個版本的合約、設定檔,或任何你不會交給陌生 伺服器的內容之前,這點值得先知道。