Arzhna On-Line :: T

Cynic, Guitar, Punk, Twinkle and Jazzy
사용자 삽입 이미지
  프트웨어를 개발하다 보면 여러버젼의 파일을 비교하고 변경된 내용을 머지해야할 일들이 비일비재합니다. 물론 CVS나 SVN같은 소스 관리 툴들을 통해서 이러한 일들을 할 수 있지만 이러한 툴을 사용하지 않는다면 상당히 불편할 수 밖에 없지요. 기본적으로 윈도우즈에서는 DOS 명령어인 comp를 리눅스에서는 쉘에서 diff 명령을 이용하여 비교할 수 있습니다. 그러나 텍스트 기반에서 작업하기는 초심자에게는 어려운 일이 아닐 수 없습니다.
 
 DOS명령어 comp는 아주 기초적인 비교작업만을 해주기 때문에 윈도우즈에서는 이미 많은 파일비교 툴들이 나와있는 상황입니다.. Araxis MergeWin-Merge가 대표적인 윈도우즈용 파일비교 툴이라 할 수 있겠습니다. 반면 리눅스에서는 diff 이라는 명령어의 기능이 제법 강력한데다가 파이프를 이용하여 다른 내용만 추출하는 등의 연계작업도 해낼 수 있고 vi를 이용해도 되기때문에 굳이 다른 툴을 사용하지 않아도 무리가 없지요. 그러나 역시 텍스트 기반이므로 수많은 옵션들을 숙지하고 있어야하는 한계를 가지고 있습니다. 그래서 오늘 소개할 툴이 바로 리눅스에서 사용할 수 있는 Meld라는 GUI 기반의 파일비교 툴입니다.

 파일비교 툴의 주 기능은 두개의 파일을 열어 서로 다른 부분을 하일라이트 시켜주는 것입니다. 더불어 다른 부분을 복사하여 같게 만들어 줄 수 있는 머지 기능도 필수지요. Meld는 이러한 기본 기능에 충실하다고 할 수 있습니다.


 위 그림을 보면 기본적으로 파일비교와 디렉토리비교를 할 수 있게 되어 있습니다. 디폴트는 2개의 항목을 비교하는 것이고 옵션으로 3개 항목을 비교할 수도 있게 되어 있지요. 즉, A라는 원본과 내가 A를 수정한 B, 그리고 타인이 A의 다른 부분을 수정한 C가 있다고 가정할 때 내가 수정한 부분과 타인이 수정한 부분을 A와 비교하여 모두 머지한 D라는 소스를 만들기 위해 필요한 기능입니다. - 물론 3항 비교를 할 경우는 작업이 많이 복잡해집니다. ㄱ-); -
사용자 삽입 이미지사용자 삽입 이미지
왼쪽이 Araxis Merge 오른쪽이 Meld

사용자 삽입 이미지사용자 삽입 이미지

 Meld를 Araxis Merge와 비교해 보면 거의 차이가 없습니다. 위 그림과 같이 인터페이스마저 비슷하네요. Araxis Merge의 리눅스 버젼이라고 해도 과언이 아닐정도. 성능 역시 별차이가 없습니다.

 Meld는 공식사이트(http://meld.sourceforge.net)에서 다운받을 수 있으며 데비안 계열인 우분투에서는 쉘에서 다음과 같이 입력하면 쉽게 설치 할 수 있습니다. 현재 최신 릴리즈 버젼은 1.1.5.1 이네요.

sudo apt-get install meld

뱀발) 어제 bluefish를 소개했다가 vi 유저들한테 몰매맞은(?) 기분이라 meld 역시 소개하기가 조금 겁이 나네요.
        역시 또 vi가 최고라고 할거 같습니다. vi가지고 비교도 하고 머지도 할 수 있다고...
        물론 내가 편하게 쓸 수 있는 툴이 최고라는 생각에는 변함이 없지만.... 무섭긴합니다 ㄱ-);
        마치 SLR 클럽에 가서 펜탁스 카메라를 소개하는 기분이랄까 ? ㄷㄷㄷ


2008/02/21 13:11 2008/02/21 13:11
소개합니다! 2008/02/21 13:11 by *ARZHNA

TRACKBACK :: http://arzhna.net/t/trackback/660

  1. OpenID Logo 상오기 2008/02/21 14:54 # M/D Reply

    서브버전 사용하면서 diff도 써보고 Araxis Merge 연동해서 써보기도 했네요.
    저랩이라 그런지 윈용 툴이 편하긴 하더군요 ^^

    1. *ARZHNA 2008/02/21 15:00 # M/D

      저도 그래요 ^^
      텍스트기반 보다는 깔끔한 그래픽 기반 툴들이 보기도 좋고
      사용하기 어렵지 않고 좋아요

  2. Draco 2008/02/21 16:24 # M/D Reply

    ㅋㅋㅋㅋ
    vi때문에 트라우마가 생기신 모양입니다.
    전 vi는 도저히 못쓰겠던데. ㅎㅎ

    좋은소개 잘 읽었습니다.

    1. *ARZHNA 2008/02/21 16:43 # M/D

      트라우마라니 ㄷㄷㄷ
      진짜 스르륵 캐논동에 가서 펜탁스 한번 써봐! 라고 말했다가 몰매맞는그런 기분이에요.

  3. 조영운 2008/02/21 18:03 # M/D Reply

    역시 버전관리라면 이클립스 + subclipse 에서 다하는...
    버전비교까지 그냥 이걸로... ㅡ.ㅡ

    그냥 여러 파일끼리 비교는 아직 안해봤는걸...
    딴건 모르겠고 보기에는 깔끔해보인다...
    만약 써야만 하는 상황이라면 왼쪽 보다는 오른쪽을 쓸거 같은데... ㅋ

    1. *ARZHNA 2008/02/21 18:32 # M/D

      왼쪽꺼는 윈도우즈에서 쓰는 녀석이고
      오른쪽거가 리눅스용 Meld에요

      근데 우리는 칩제조회사에서 주는 SoC용 드라이버를 사용하다보니까
      그걸 이클립스에서 열어 쓰기가 애매해서 ㅜㅜ
      역시 한수 전수해주삼

  4. 좡이 2010/01/07 21:10 # M/D Reply

    좋은 정보 감사합니다 ^^ 이제 막 시작하고 텍스트 기반이 익숙하지 않은 저에겐 좋은 정보내요 ~
    써보니 확 눈에 들어오내요 ㅎㅎ

    1. *ARZHNA 2010/01/08 09:51 # M/D

      ^^ 도움이 되셨다느 뿌듯하네요

Leave a Comment
[로그인][오픈아이디란?]
1  ... 123 124 125 126 127 128 129 130 131  ... 696 
T (696)
정지된 흔적 (105)
보헤미안 라이프 (13)
초전자 나이트클럽 (41)
로우파이 케이크 (28)
빛나는 텍스트 (24)
소개합니다! (16)
지름노트 (40)
아스트랄 푸드코트 (13)
삽질의 연속 (49)
인생은 케오섬 (9)
가자! 안드로메다 (133)
그런게 아니겠니 (218)
혼탁한 바람에 (5)

archive