Programming/Tool

[SVN X] Mac에서 SVN X를 이용한 SVN 사용하기

MB Brad KWON 2015. 12. 22. 09:22

 SVN은 프로젝트를 공동으로 수행함에 있어서 없어서는 안 될 정도로 무지하게 편리한 개발툴이다. 여러 사람이 공동의 레파지토리에 소스코드를 등록하고 빼올 수 있을 뿐만아니라 코멘트도 달 수 있고 자동으로 버전관리도 해준다. 히스토리를 이용하면 자신이 원하는 리비전으로 되돌릴 수도 있으며 각 리비전 사이의 소스코드의 변화도 한눈에 알 수 있다. 그러면 이렇게 편리한 SVN을 사용하려면 어떻게 해야하는가??

 

 필자는 Windows에서는 tortoiseSVN을 애용하고  Mac OS에서는 SVNX를 애용한다. 여기서는 SVN X에 대해서 배워보자!!


== 2015.12.22 : 버전 2.x 다운로드 URL 추가 ==

SVN X (2.x) 다운로드  URL : https://code.google.com/p/svnx/wiki/Changes

SVN X (1.x) 다운로드  URL : http://code.google.com/p/svnx/downloads/list


 먼저 위의 URL로 들어가서 SVN X를 다운 받는다. SVN X는 구글코드상에 레파지토리를 유지한 공개 소프트웨어이다. 가장 큰 장점은 Mac에서 이용가능한 SVN툴이라는 점과 GUI로 구현되어 사용이 편리하다는 점이다. 설치는 간단하다. DMG파일을 마운트한 다음에 그림처럼 SVN X의 app파일을 응용프로그램 폴더에 복사해 주면된다.



 복사해준 다음 실행을 한다. 실행을 하면 아래와 같이 두개의 창이 뜬다. 왼쪽의 창은 현재 로컬 드라이브 상에 체크아웃 받은 프로젝트를 표시해주고 오른쪽은 사용자가 등록한 SVN 레파지토리의 목록이다. 먼저 오른쪽의 목록에 SVN 레파지토리를 등록해주고 체크아웃을 받은 다음에 왼쪽의 리스트에 워킹카피가 표시가 되면 왼쪽의 리스트를 통하여 update, commit 등의 처리를 해주면 된다.



 만약에 SVN bin 디렉토리를 설정해 달라는 메시지와 함께 Path 설정창이 뜬다면 밑의 글을 참고하도록 한다.


SVN X Path 설정법 : http://maskkwon.tistory.com/64


 먼저 SVN X를 사용하기 위해서 SVN 레파지토리를 등록한다. 오른 쪽 창의 네개의 빈칸이 보인다. 위에서부터 차레대로 프로젝트의 이름, SVN 서버의 URL, 유저 ID, 유저 패스워드를 입력한다. 그리고 '+'버튼을 누른다. 그럼 목록에 SVN 레파지토리가 등록된 모습을 확인할 수 있다. 목록에서 더블클릭을 한다. 입력한 정보가 올바르다면 밑에와 같은 그림이 나타날 것이다.



 자신이 체크아웃하려는 해당 프로젝트가 맞다면 프로젝트를 선택한 후에 체크아웃 버튼을 누른다. 자신이 체크아웃할 로컬 드라이브의 위치를 설정하면 SVN 레파지토리로부터 프로젝트를 체크아웃받는다. 제대로 체크아웃을 받았다면 아까 처음 등장했던 두개의 창 중에 왼쪽의 워킹카피 목록창에 하나가 추가 된것을 볼 수 있다. 추가된 목록을 더블클릭하면 밑에와 같은 그림이 뜰것이다. 



 자신의 워킹카피의 소스 코드상에서 추가, 변경이 이루어 지거나 폴더나 파일의 생성, 수정, 삭제등이 이루어지면 그 변경사항이 이 목록을 통해 나타날것이다. 이 창을 통해서 revert, update, commit등을 할 수 있다. commit을 하기 위해서는 위의 그림에 나타나는 변경사항중에 commit할 것들을 선택해준다음에 commit 버튼을 누르면 된다. 그러면 comment를 다는 창이 나오고 commit이 된다. 제대로 commit이 됬다면 목록에 있던 변경사항들이 사라진다. 그리고 SVN 레파지토리 상에서 commit된 사항을 확인할 수 있을것이다. 참고로 아까 SVN 레파지토리 창에서 report를 누르면 밑의 그림가 같이commit된 사항에 대하여 한 눈에 볼 수 있는 창이 열린다.






'Programming > Tool' 카테고리의 다른 글

[Xcode] New Features in Xcode 6  (0) 2014.08.28
[VI/VIM] VI와 cscope의 연동  (0) 2013.06.18
[cscope] cscope 사용법  (0) 2013.06.18
[ctags] ctags 사용법  (0) 2013.06.18
[VI/VIM] 개발 환경 설정  (0) 2013.06.18