웹사이트 검색

Linux에서 시각적 비교/병합 도구 Meld를 사용하여 파일을 비교하는 초보자 가이드


이 페이지에서

  1. 멜드에 대하여\n
  2. 멜드 설치
  3. 멜드 사용법
  4. 결론

이제 Linux에 몇 가지 명령줄 기반 diff/merge 도구가 있으므로 OS에서도 사용할 수 있는 몇 가지 시각적 diff/merge 도구를 설명하는 것이 논리적입니다. 그 이유는 모든 사람이 명령줄에 익숙하지 않으며 명령줄 기반 비교 도구를 배우고 이해하기가 더 어려울 수 있기 때문입니다.

따라서 Meld라는 GUI 기반 도구를 사용하여 이 새로운 시리즈를 시작하십시오.

But before we jump onto the installation and explanation part, it'd be worth sharing that all the instructions and examples presented in this tutorial have been tested on Ubuntu 14.04 and the Meld version we've used is 3.14.2.

멜드 소개

Meld는 기본적으로 주로 개발자를 대상으로 하는 시각적 비교 및 병합 도구입니다(단, 최종 사용자를 염두에 두고 도구를 잘 설명해야 합니다). 이 도구는 2방향 및 3방향 비교를 모두 지원하며 파일뿐만 아니라 디렉토리 및 버전 제어 프로젝트도 비교할 수 있습니다.

"Meld는 코드 변경 사항을 검토하고 패치를 이해하는 데 도움이 됩니다." 공식 웹사이트에 나와 있습니다. "계속 피하고 있는 병합에서 무슨 일이 일어나고 있는지 파악하는 데 도움이 될 수도 있습니다." 이 도구는 GPL v2에 따라 라이선스가 부여됩니다.

멜드 설치

Ubuntu 또는 기타 Debian 기반 Linux 배포판을 사용하는 경우 다음 명령을 사용하여 Meld를 다운로드하고 설치할 수 있습니다.

sudo apt-get install meld

또는 시스템 패키지 관리자를 사용하여 도구를 다운로드할 수도 있습니다. 예를 들어 Ubuntu에서는 Ubuntu 소프트웨어 센터 또는 이전 OS 시작 버전 16.04를 대체한 Ubuntu 소프트웨어를 사용할 수 있습니다.

그러나 Ubuntu 공식 저장소의 Meld 버전이 이전 버전일 수 있습니다. 따라서 이 경우 최신 버전을 사용하려면 여기에서 패키지를 다운로드할 수 있습니다. 이 방법을 선택하면 다운로드한 패키지를 추출한 다음 bin 폴더 아래에 있는 meld 바이너리를 실행하기만 하면 됩니다.

~/Downloads/meld-3.14.2/bin$ ./meld 

참고로 Meld에 필요한 패키지는 다음과 같습니다.

  • Python 2.7(Python 3.3 개발 중)
  • GTK+ 3.14
  • GLib 2.36
  • PyG객체 3.14
  • GtkSourceView 3.14
  • 피카이로\n

멜드 사용법

도구가 실행되면 다음과 유사한 화면이 표시됩니다.

따라서 파일 비교, 디렉터리 비교 및 버전 제어 보기의 세 가지 옵션이 있습니다.

파일 비교 옵션을 클릭하면 비교할 파일을 선택하라는 메시지가 표시됩니다.

위의 스크린샷에서 알 수 있듯이 Meld를 사용하면 3방향 비교도 수행할 수 있지만 이 기사 시리즈의 첫 번째 부분에서는 보다 일반적인 2방향 비교에 충실해야 합니다.

계속해서 비교하려는 파일을 선택한 다음 비교 버튼을 클릭합니다. 이 도구는 두 파일을 나란히 열고 다른 줄(및 차이점)을 강조표시하는 것을 볼 수 있습니다.

따라서 차이점은 두 파일의 두 번째 줄에 있고 실제 차이점은 file2의 두 번째 줄에 있는 추가 3입니다. 보이는 검은색 화살표는 병합/변경 작업을 수행하기 위한 것입니다. 이 경우 오른쪽 화살표는 file2의 두 번째 줄을 file1의 해당 줄로 변경합니다. 왼쪽 화살표는 그 반대도 마찬가지입니다.

변경 후 Ctrl+s를 눌러 저장할 수 있습니다.

Meld가 기본 수준에서 어떻게 작동하는지 알려주는 간단한 예였습니다. 약간 더 복잡한 비교를 살펴보겠습니다.

변경 사항에 대해 논의하기 전에 Meld GUI에는 파일 간의 변경 사항에 대한 시각적 개요를 제공하는 영역이 있다는 점을 여기서 언급할 가치가 있습니다. 특히 여기에서 알림을 표시하려는 것은 창의 왼쪽과 오른쪽에 있는 수직 막대입니다. 예를 들어 다음 스크린샷을 참조하세요.

자세히 관찰하면 위 스크린샷의 막대에 일부 색상 블록이 포함되어 있습니다. 이 블록은 두 파일 간의 모든 차이점에 대한 개요를 제공하도록 설계되었습니다. "각 색상 블록은 사용된 블록 색상에 따라 파일 간에 삽입, 삭제, 변경 또는 충돌하는 섹션을 나타냅니다."라고 공식 문서에서 설명합니다.

이제 우리가 논의했던 예로 돌아가 보겠습니다. 다음 스크린샷은 Meld를 사용할 때 파일 변경 사항을 이해하고 병합하는 것이 얼마나 쉬운지 보여줍니다.

지금까지 파일을 스크롤하여 한 변경 사항에서 다른 변경 사항으로 이동했습니다. 그러나 비교 중인 파일이 매우 커서 변경 사항으로 이동하려고 할 때마다 스크롤하기 어려운 경우가 있을 수 있습니다. 이를 위해 편집 영역 위에 있는 도구 모음에서 주황색 화살표를 사용할 수 있습니다.

Meld를 사용하는 동안 몇 가지 일반적인 작업을 수행하는 방법은 다음과 같습니다. 표준 Ctrl+f 키 조합을 사용하여 편집기 영역에서 항목을 찾고 F11 키를 눌러 도구를 전체 화면 모드로 전환하고 Ctrl+r을 눌러 새로 고침(보통 비교 중인 파일 중 하나 또는 둘 모두가 변경된 경우에 사용됨).

다음은 공식 Meld 웹 사이트에서 광고하는 주요 기능 중 일부입니다.

  • 파일 및 디렉토리의 2방향 및 3방향 비교\n
  • 입력할 때 파일 비교 업데이트\n
  • 변경 블록에 대한 자동 병합 모드 및 작업을 통해 병합이 더 쉬워집니다.\n
  • 시각화를 통해 파일을 더 쉽게 비교할 수 있습니다.\n
  • Git, Bazaar, Mercurial, Subversion 등을 지원합니다.\n

위의 목록은 완전하지 않습니다. 웹사이트에는 Meld가 제공하는 전체 기능 목록이 포함된 전용 기능 페이지가 있습니다. 여기에 나열된 모든 기능은 도구가 파일 비교, 디렉터리 비교, 버전 제어 또는 병합 모드에 사용되는지 여부에 따라 섹션으로 나뉩니다.

다른 소프트웨어 도구와 마찬가지로 Meld가 할 수 없는 일이 있습니다. 공식 웹 사이트에는 다음 중 하나 이상이 나열되어 있습니다. 크기가 동일합니다. 이 작업을 수행할 수 있는 옵션이 없습니다.".

결론

Meld는 훨씬 더 많은 일을 할 수 있기 때문에 여기에서 표면을 긁었습니다. 하지만 튜토리얼 시리즈의 첫 번째 부분이므로 지금은 괜찮습니다. Melds 기능에 대한 아이디어를 제공하기 위해 특정 유형의 변경 사항을 무시하고 파일 간의 개별 차이점을 이동, 복사 또는 삭제하도록 요청하고 명령줄에서 실행하도록 도구를 구성할 수 있습니다. 이 자습서 시리즈의 다음 부분에서 이러한 모든 주요 기능에 대해 자세히 설명합니다.