게임 개발자를 위한 SVN (3)

Tortoise SVN

Tortoise SVN은 윈도우플랫폼 기반 SVN 클라이언트 프로그램이다. 윈도우 환경에서 설치하여 GUI Graphic User Interface 환경에서 이용할 수 있기 때문에 SVN의 복잡한 명령줄 Command line 체계를 이용하지 않고도 손쉽게 사용이 가능하다.

다운로드 및 설치

Tortoise SVN은 공식 홈페이지(http://tortoisesvn.tigris.net/) 에서 다운로드 받을 수 있다. 자신의 윈도우의 운영체계 종류(32Bit / 64Bit)에 맞는 버전을 선택하여 설치 파일을 다운로드 받는다.

Tortoise SVN 공식 홈페이지

해당 홈페이지에서는 각 언어별 언어팩을 제공하고 있으며, 한글 역시 지원하고 있다-영어로 된 메뉴에 울렁증이 생긴다면 한국어 지원 팩을 다운로드를 받는다. 설치 파일 및 언어 팩의 인스톨 파일을 실행시켜 설치를 하면 Tortoise SVN이 실행 된다.

Tortoise SVN 사용에 꼭 필요한 기능들

SVN에 대한 기본 개념 및 Tortoise SVN에 대한 설명은 여기까지 하도록 하고, 본격적으로 Tortoise SVN을 업무에 활용하기 위한 기능 설명을 하도록 한다.

체크 아웃 Check Out

체크 아웃은 저장소에서 자신의 컴퓨터로 작업 복사본을 가져오는 명령이다. 해당 명령을 수행하게 될 경우, 사용자 인증을 거친 다음, 저장소로 부터 파일들을 지정된 폴더로 복사 해 오게 된다.

  • 작업 복사본을 저장 할 폴더로 이동한 후, 해당 폴더 윈도우에서 마우스 우클릭 한다. 메뉴 중 SVN Check Out을 선택한다.
  • SVN Check Out을 선택했을 경우 아래와 같은 팝 업 윈도우가 나타난다.
    • URL of repository: 접속 할 저장소의 주소를 입력한다. 저장소의 주소는 SVN 관리자에게 확인한다.
    • Checkout directory: 자신이 작업 복사본을 저장 할 폴더의 위치를 입력한다(보통은 자동으로 입력되므로, 해당 위치가 맞는지 정도만 확인 하면 된다).
    • Checkout Depth: 어느 위치까지 체크아웃 할 것인지를 결정하는 옵션이다. 디폴트인 Fully recursive를 선택한다.
    • Revision: 복사할 작업 복사본의 리비전을 선택한다. HEAD revision을 선택 할 경우 가장 최신의 리비전을 받게 되며, 원하는 리비전의 번호를 입력하면 해당 리비전을 받을 수 있다.
  • 모든 사항을 확인 한 후, OK 버튼을 누르면 다음과 같은 사용자 인증 팝 업이 나타난다.
    • Username: 자신이 발급 받은 사용자 이름을 입력한다
    • Password: 지정한 패스워드를 입력한다.
    • Save authentication: 이 항목에 체크 하게 될 경우 해당 컴퓨터에 인증 기록이 남아 다음 작업 부터는 인증 과정이 자동으로 이루어진다-저장 내역을 삭제하기 위해서는 Tortoise SVN의 환경 설정 옵션을 이용한다.
  • 인증 절차를 마치면 체크 아웃 내역이 아래와 같이 실시간으로 표시 된다.
  • 체크 아웃이 완료 되면 OK 버튼을 눌러 해당 팝 업을 닫는다.

커밋 Commit

작업 복사본에서 자신이 해야 할 업무를 마무리 하였을 경우, 해당 작업물을 커밋하여 저장소로 내용을 전송해야 한다.

  • 작업 복사본에서 폴더나 수정한 파일을 선택하여 마우스 우클릭을 하여 나타나는 메뉴에서 SVN Commit 을 선택한다.
  • SVN Commit 선택 시 다음과 같은 팝 업 윈도우가 나타난다.
    • Message: 커밋에 들어가는 로그를 기록한다. 로그에는 이번 커밋에서의 변동사항, 팀원들이 확인해야 될 내용, 검색 태그 등을 간략하게 정리하여 입력하도록 한다.
    • Changes made: 커밋에 적용되는 파일의 목록과 적용 상태를 확인 할 수 있다. 아래의 체크 박스 옵션들을 통하여 리스팅을 조정하거나, 전체 선택/선택 취소를 할 수 있다.
  • 로그 메시지 및 커밋 할 파일을 선택 한 후 OK 버튼을 누르면 아래와 같이 커밋 내역이 실시간으로 표시 된다.
  • 커밋이 완료 되면 OK 버튼을 클릭하여 팝 업을 닫는다.

업데이트 Update

자신이 작업을 진행하고 있는 작업 복사본을 저장소에 있는 최신 작업물로 교체하기 위해서 업데이트 명령을 이용한다. 이 명령을 이용하여 자신이 작업하고 있는 동안 다른 사람들에 의해 갱신 된 작업물들을 최신 파일로 내려 받아 변경 할 수 있다.

  • 작업 복사본에서 업데이트를 실시할 폴더나 파일을 선택하여 마우스 우클릭으로 메뉴를 호출한다. 메뉴 중 SVN Update를 선택한다.
  • 팝 업과 함께 업데이트 내역이 실시간으로 보여진다.
  • 업데이트가 완료 되면 팝 업 하단에 Show log… 버튼과 OK 버튼이 활성화 된다.
    • Show log… 버튼을 클릭하면, 로그 팝 업이 열린다. 로그 팝 업 에서 각 리비전 별 로그 메시지를 확인 할 수 있다.
    • OK 버튼을 클릭하면 팝 업 이 닫힌다.

되돌리기 Revert

작업을 하다보면, 자신의 현재 작업물을 버리고 이전 작업물로 되돌려야 할 경우가 종종 발생한다. 되돌리기 명령을 이용하면 최신 리비전으로 파일을 복구 시킬 수 있다.

  • 작업 복사본에서 수정 한 파일 중 되돌리기를 수행해야 할 폴더나 파일을 선택하여 마우스 우클릭으로 메뉴를 불러낸 후, Tortoise SVN을 선택하여 서브 메뉴를 불러온다.
  • 서브 메뉴 항목 중 Revert 를 선택하면, 아래와 같은 팝 업이 출현한다.
  • 되돌리기를 실행 할 파일을 선택 한 후 OK 버튼을 클릭 하면 해당 파일을 저장소의 가장 최신 리비전으로 되돌린다.

잠금 및 잠금 해제 Lock/Unlock

잠금 중심 버전 관리 방식을 채택하는 것이 아니라 하더라도, 자신이 작업하고 있는 작업물을 다른 팀원이 함부로 수정하지 못하게 막아야 할 필요가 발생 경우가 있다. 이때는 해당 파일이나 폴더 전체를 잠금 상태로 만들고 난 다음, 작업이 완료 된 이후 해당 파일의 잠금을 해제하면 된다.

  • 잠금을 위한 파일 혹은 폴더를 선택하고 마우스 우클릭으로 메뉴를 불러낸 후, Tortoise SVN을 선택하여 서브 메뉴를 불러온다.
  • 서브 메뉴 항목 중 Get Lock을 선택하면 아래와 같은 팝 업이 출현한다.
    • 해당 파일에 잠금을 거는 이유를 Enter a message describing why you ar locking the file(s). 항목에 서술한다.
    • 파일 리스트를 확인 한 후 OK 버튼을 클릭하면 해당 파일을 잠금 상태로 만든다.
  • 저장소에 해당 파일의 잠금 상태가 전송 되면서 잠금 처리가 완료 된다.
  • 잠금 상태를 다시 잠금 해제 상태로 변환하기 위해서는 마우스 우클릭으로 메뉴를 불러낸 후, Tortoise SVN의 서브메뉴를 불러온다.
  • 서브 메뉴 항목 중 Release Lock을 선택하면 아래와 같은 팝 업이 나타난다.
    • Unlock을 할 파일 목록을 확인 한 후 OK 버튼을 클릭하면 해당 파일을 잠금 해제 상태로 만든다.