Meld是一款非常好用的文件夾對比工具,這款軟件提供了文件夾比較、目錄比較、版本控制和合并模式四大功能,你可以通過這款軟件比較兩個文件夾的不同之處,并且Meld免費版支持Git、SVN等主流的版本控制系統(tǒng)。
功能特色:
文件比較
就地編輯文件,并即時更新比較
執(zhí)行雙向和三向差異并合并
輕松地在差異和沖突之間導航
通過標記的插入,更改和沖突可視化全局和局部差異
使用內(nèi)置的正則表達式文本過濾來忽略不感興趣的差異
語法突出顯示
目錄比較
逐個文件地比較兩個或三個目錄,顯示新文件,缺失文件和更改文件
直接打開任何沖突或不同文件的文件比較
過濾掉文件或目錄以避免看到虛假的差異
還提供簡單的文件管理
版本控制
Meld支持許多版本控制系統(tǒng),包括Git,Mercurial,Bazaar和SVN
在提交之前,啟動文件比較以檢查所做的更改
查看文件版本控制狀態(tài)
也可以使用簡單版本控制操作(即提交/更新/添加/刪除/刪除文件)
合并模式(開發(fā)中)
使用共同的祖先自動合并兩個文件
在中間窗格中標記并顯示所有沖突更改的基本版本
可視化并合并同一文件的獨立修改
鎖定只讀合并庫以避免錯誤
命令行界面,可輕松與現(xiàn)有工具集成,包括git mergetool
使用方法:
裝好了軟件,就可以看到類似這樣的畫面:
Meld started
有三個選項:比較文件(File comparison),比較目錄(Directory comparison)以及版本控制視圖(Version control view)。
點擊“比較文件”選項,就可以選擇需要比較的文件:
Meld file comparison
就像上面的截圖那樣明白,Meld 也可以進行三向比較,但是在這一系列文章的第一部分,我們只會講更常用的雙向比較。
接著,選擇你想要比較的文件,點擊“比較”(Compare)按鈕。軟件會在兩邊分別打開兩個文件,高亮不同的行(以及不同的部分)。
Compare files in Meld
兩個文件的不同之處在第二行,差別在于 file2 文件的第二行多了一個 3。你看到的黑色箭頭是用來進行合并或修改的操作的。該例中,向右的箭頭將會把 file2文件的第二行改成文件 file1 中對應行的內(nèi)容。左向箭頭做的事情相反。
做完修改后,按下 Ctrl+s 來保存。
這個簡單的例子,讓你知道 Meld 的基本用法。讓我們看一看稍微復雜一點的比較:
Meld advanced file comparison
在討論這些變化前,這里提一下, Meld 的界面中有幾個區(qū)域,可以給出文件之間的差異,讓概況變得直觀。這里特別需要注意窗口的左右兩邊垂直的欄。比如下面這個截圖:
Visual Comparison
仔細觀察,圖中的這個欄包含幾個不同顏色的區(qū)塊。這些區(qū)塊是用來讓你對文件之間的差異有個大概的了解。“每一個著色的區(qū)塊表示一個部分,這個部分可能是插入、刪除、修改或者有差別的,取決于區(qū)塊所用的顏色!惫俜轿臋n是這樣說的。
現(xiàn)在,讓我們回到我們之前討論的例子中。接下來的截圖展示了用 Meld 理解文件的改動是很簡單的(以及合并這些改動):
File changes visualized in Meld
Meld Example 2
Meld Example 3
接著,我們滑動文件,從一個改動跳到另一個。但是,當要比較的文件很大時,這會耗一點時間,當你想要滑動文件跳到一個改動的位置時,也會變得很困難。如果是這種情況的話,你可以用工具欄的橙色箭頭,就在編輯區(qū)域的上方:
Go to next change in Meld
這些是你使用 Meld 時做的一般性的事情:可以用標準的 Ctrl+f 組合鍵在編輯區(qū)域內(nèi)進行查找,按 F11 鍵讓軟件進入全屏模式,再按 Ctrl+r 來刷新(通常在所有要比較的文件改變的時候使用)。
以下是 Meld 官方網(wǎng)站宣傳的重要特性:
文件和目錄的雙向及三向比較
輸入即更新文件的比較
自動合并模式,按塊改動的動作讓合并更加簡單
可視化讓比較文件更簡單
支持 Git,Bazaar,Mercurial,Subversion 等等
注意還不僅僅只有以上所列的。網(wǎng)站上有個專門的特性頁面,里面提到了 Meld 提供的所有特性。這個頁面列出的所有特性分為幾個部分,以該軟件是用來做文件比較、目錄比較、版本控制還是處于合并模式下為基礎進行劃分。