Hướng dẫn dành cho người mới bắt đầu về cách so sánh các tệp bằng công cụ so sánh/hợp nhất trực quan Meld trên Linux

theanh

Administrator
Nhân viên
Bây giờ chúng ta đã tìm hiểu một số công cụ diff/merge dựa trên dòng lệnh trong Linux, sẽ hợp lý khi giải thích một số công cụ diff/merge trực quan có sẵn cho hệ điều hành này. Lý do là không phải ai cũng quen với dòng lệnh và/hoặc các công cụ so sánh dựa trên dòng lệnh có thể khó học và hiểu hơn đối với một số người.

Vì vậy, chúng ta sẽ bắt đầu loạt bài mới này bằng một công cụ dựa trên GUI có tên là Meld.
Mã:
Nhưng trước khi chuyển sang phần cài đặt và giải thích, chúng tôi muốn chia sẻ rằng tất cả các hướng dẫn và ví dụ được trình bày trong hướng dẫn này đều đã được thử nghiệm trên Ubuntu 14.04 và phiên bản Meld mà chúng tôi sử dụng là 3.14.2.

Giới thiệu về Meld​

Meldvề cơ bản là một công cụ so sánh và hợp nhất trực quan chủ yếu hướng đến các nhà phát triển (tuy nhiên, hãy yên tâm rằng chúng tôi sẽ giải thích công cụ này theo hướng hướng đến người dùng cuối). Công cụ này hỗ trợ cả so sánh hai chiều và ba chiều, không chỉ cho phép bạn so sánh các tệp mà còn so sánh các thư mục và các dự án được kiểm soát theo phiên bản.

"Meld giúp bạn xem xét các thay đổi về mã và hiểu các bản vá", trang web chính thức cho biết. "Nó thậm chí có thể giúp bạn tìm ra những gì đang diễn ra trong quá trình hợp nhất mà bạn vẫn tránh." Công cụ được cấp phép theo GPL v2.

Cài đặt Meld​

Nếu bạn đang sử dụng Ubuntu hoặc bất kỳ bản phân phối Linux nào khác dựa trên Debian, bạn có thể tải xuống và cài đặt Meld bằng lệnh sau:
Mã:
sudo apt-get install meld
Ngoài ra, bạn cũng có thể sử dụng trình quản lý gói của hệ thống để tải xuống công cụ. Ví dụ, trên Ubuntu, bạn có thể sử dụng Ubuntu Software Center hoặc Ubuntu Software, đã thay thế phiên bản khởi động trước đó là 16.04 của hệ điều hành.

Tuy nhiên, có thể phiên bản Meld trong kho lưu trữ chính thức của Ubuntu đã cũ. Vì vậy, trong trường hợp đó, nếu bạn muốn sử dụng phiên bản mới hơn, bạn có thể tải xuống gói từ tại đây. Nếu bạn chọn phương pháp này, thì tất cả những gì bạn phải làm là giải nén gói đã tải xuống, sau đó chạy tệp nhị phân 'meld' có trong thư mục 'bin':
Mã:
~/Downloads/meld-3.14.2/bin$ [B]./meld[/b]
Để bạn biết, sau đây là các gói mà Meld yêu cầu:
  • Python 2.7 (Python 3.3 đang được phát triển)
  • GTK+ 3.14
  • GLib 2.36
  • PyGObject 3.14
  • GtkSourceView 3.14
  • pycairo

Sử dụng Meld​

Khi công cụ được khởi chạy, bạn sẽ thấy một màn hình tương tự như sau:



Vì vậy, bạn có ba tùy chọn: So sánh tệp, So sánh thư mục và Chế độ xem kiểm soát phiên bản.

Nhấp vào tùy chọn 'So sánh tệp' và bạn sẽ được yêu cầu chọn các tệp để so sánh:



Như ảnh chụp màn hình ở trên cho thấy, Meld cũng cho phép bạn thực hiện so sánh 3 chiều, nhưng - trong phần đầu tiên của loạt bài viết này - chúng ta sẽ chỉ so sánh 2 chiều phổ biến hơn.

Tiếp theo, hãy chọn các tệp bạn muốn so sánh rồi nhấp vào nút 'So sánh'. Bạn sẽ thấy công cụ mở cả hai tệp cạnh nhau và cũng đánh dấu các dòng khác nhau (cũng như các điểm khác biệt).



Vì vậy, điểm khác biệt nằm ở dòng thứ hai của cả hai tệp và điểm khác biệt thực sự là '3' thừa ở dòng thứ hai của tệp2. Các mũi tên màu đen mà bạn thấy ở đó để thực hiện thao tác hợp nhất/thay đổi. Trong trường hợp này, mũi tên bên phải sẽ thay đổi dòng thứ hai trong 'tệp2' thành dòng tương ứng từ 'tệp1'. Mũi tên bên trái sẽ thực hiện ngược lại.

Sau khi thực hiện thay đổi, bạn có thể nhấn Ctrl+s để lưu chúng.

Đó là một ví dụ đơn giản để cho bạn biết Meld hoạt động như thế nào ở cấp độ cơ bản. Chúng ta hãy xem xét một so sánh phức tạp hơn một chút:



Trước khi thảo luận về các thay đổi, cần đề cập ở đây rằng có những khu vực trong GUI Meld cung cấp cho bạncái nhìn tổng quan trực quan về các thay đổi giữa các tệp. Cụ thể, những gì chúng tôi đang cố gắng đưa vào thông báo của bạn ở đây là các thanh dọc ởbên trái và bên phải của cửa sổ. Ví dụ, hãy xem ảnh chụp màn hình sau:



Nếu bạn quan sát kỹ, thanh trong ảnh chụp màn hình ở trên chứa một sốkhối màu. Các khối này đượcthiết kế để cung cấp cho bạn cái nhìn tổng quan về tất cả các điểm khác biệt giữa hai tệp. "Mỗi khối màu đại diện cho một phần được chèn, xóa, thay đổi hoặc xung đột giữa các tệp của bạn, tùy thuộc vào màu khối được sử dụng", tài liệu chính thức giải thích.

Bây giờ, chúng ta hãy quay lại ví dụ mà chúng ta đã thảo luận. Các ảnh chụp màn hình sau đây cho thấy việc hiểu các thay đổi tệp (cũng như hợp nhất chúng) dễ dàng như thế nào khi sử dụng Meld:







Tiếp tục, cho đến nay, chúng ta đã chuyển từ thay đổi này sang thay đổi khác bằng cách cuộn các tệp. Tuy nhiên, có thể có những lúc các tệp được so sánh rất lớn, khiến việc cuộn mỗi khi bạn muốn chuyển đến một thay đổi trở nên khó khăn. Để thực hiện việc này, bạn có thể sử dụng các mũi tên màu cam trên thanh công cụ nằm phía trên vùng chỉnh sửa:



Sau đây là cách thực hiện một số thao tác phổ biến khi sử dụng Meld: Bạn có thể sử dụng tổ hợp phím Ctrl+f chuẩn để tìm mục trong vùng chỉnh sửa, nhấn phím F11 để chuyển công cụ sang chế độ toàn màn hình và Ctrl+r để làm mới (thường được sử dụng khi một hoặc cả hai tệp đang được so sánh đã thay đổi).

Sau đây là một số tính năng chính mà trang web chính thức của Meld quảng cáo:
  • So sánh hai và ba chiều các tệp và thư mục
  • So sánh tệp được cập nhật khi bạn nhập
  • Chế độ tự động hợp nhất và các hành động trên các khối thay đổi giúp hợp nhất dễ dàng hơn
  • Hình ảnh hóa giúp so sánh các tệp của bạn dễ dàng hơn
  • Hỗ trợ Git, Bazaar, Mercurial, Subversion, v.v.
Lưu ý rằng danh sách trên không đầy đủ. Trang web có một trang Tính năng chuyên dụng chứa danh sách đầy đủ các tính năng mà Meld cung cấp. Tất cả các tính năng được liệt kê ở đó được chia thành các phần dựa trên việc công cụ này đang được sử dụng để so sánh tệp, so sánh thư mục, kiểm soát phiên bản hay ở chế độ hợp nhất.

Giống như bất kỳ công cụ phần mềm nào khác, Meld có một số điều nhất định không thể thực hiện. Trang web chính thức liệt kê ít nhất một trong số chúng: "Khi Meld hiển thị sự khác biệt giữa các tệp, nó hiển thị cả hai tệp như chúng sẽ xuất hiện trong trình soạn thảo văn bản thông thường. Nó không chèn thêm các dòng để bên trái và bên phải của một thay đổi cụ thể có cùng kích thước. Không có tùy chọn nào để thực hiện việc này.".

Kết luận​

Chúng ta mới chỉ khám phá được bề nổi ở đây, vì Meld có khả năng thực hiện nhiều hơn thế nữa. Nhưng tạm thời thì ổn, vì đây là phần đầu tiên của loạt bài hướng dẫn. Chỉ để bạn có ý tưởng về khả năng của Meld, bạn có thể cấu hình công cụ để bỏ qua một số loại thay đổi nhất định, yêu cầu công cụ di chuyển, sao chép hoặc xóa các khác biệt riêng lẻ giữa các tệp, cũng như khởi chạy công cụ từ dòng lệnh. Chúng ta sẽ thảo luận về tất cả các chức năng chính này trong các phần tiếp theo của loạt bài hướng dẫn này.
 
Back
Bên trên