tortoiseSVN AnkhSVN 사용법 체크아웃 사용 비주얼 스튜디오 C# 프로젝트 가져오기

tortoisesvn 사용법 이번에 노트북을 새로 바꾸면서 기존에 사용하던 소스를 tortoisesvn 사용해 비주얼 스튜디오 C# 프로젝트 가져오기 방법에 공유해 보겠습니다.




tortoiseSVN 사용법

버전 관리를 git으로 하는 게 대세로 자리 잡았으나, 회사에서는 아직 SVN을 사용하는 곳이 많이 있습니다. 

SVN 사용에 있어 크게 SVN 서버와 SVN 클라이언트 프로그램이 있는데 tortoiseSVN은 클라이언트 프로그램에 속하게 됩니다. SVN 서버에서 소스를 가져오고 버전 관리를 가능하게 해주는 프로그램에 속합니다.


프로그램 설치는 구글이나 포털사이트에서 검색하면 상단에 공식 홈페이지가 나오고 접속 후 인스톨 파일과 한국어 언어팩을 사용하려면 하단의 한국어 언어팩까지 받아서 같이 설치해 주면 되겠습니다.

tortoiseSVN 공식사이트 다운로드 링크


tortoiseSVN 한국어 언어팩 설정

다운 받은 한국어 언어팩을 설치 후 마우스 우클릭하여 SVN 메뉴에 진입합니다.

  1. TotoiseSVN -> 설정
  2. 일반 탭의 언어에서 한국어 설정



SVN 프로젝트 가져오기

SVN 클라이언트 프로그램을 설치하고 나면, 마우스 우클릭 시 SVN 메뉴가 추가된 것을 확인할 수 있습니다.
SVN 서버 URL 가져오는 이미지
서버에서 저장소의 URL을 가져올 수 있습니다.


프로젝트를 가져오기 위해서는 아래의 일련의 과정을 거치면 됩니다.
  1. SVN Checkout... 클릭
  2. URL or repository입력란에 SVN Server URL 기입
  3. Checkout Depth의 경우에는 전체 프로젝트를 받기 위해서는 Fully recursive를 선택
  4. 특정 Revision 번호를 기입할 경우에는 Revision 번호를 기입하고 마지막 버전을 받고 싶다면 HEAD revision을 클릭 후 OK
SVN을 이용해 체크아웃하는 이미지
CheckOut을 통해 프로젝트를 가져올 수 있으며, 선택된 폴더안에 그대로 복사됩니다.


여기서 저장소의 URL의 경우에는 SVN Server에서 주소를 받아올 수 있습니다. 

tortoiseSVN의 경우에는 commit 및 update를 개발 툴 밖에서 해야 하기 때문에 다소 번거로움이 있을 수 있습니다. 

tortoiseSVN의 경우에는 한 프로젝트 안에 여러 개의 서브 프로젝트로 구성되어 있는 2tier 프로그램 등 개발 툴 안에서 개별적으로 여러 프로젝트를 받기 어려워 SVN 저장소를 통으로 받아올 때 사용하면 편리합니다.




AnkhSVN 사용법

tortoiseSVN이 개발 툴과 독립적이라면, AnkSVN의 경우에는 비주얼 스튜디오 안에서 확장 기능으로 설치하여 개발 툴 내에서 버전 관리를 할 수 있는 SVN입니다.

우선 설치를 해야 하는데요. 아래의 링크에서 설치가 가능합니다.




비주얼 스튜디오 버전 관리 툴 설정

설치를 문제없이 진행했다면, 비주얼 스튜디오에서 사용할 기본 버전 관련 툴을 변경할 필요가 있습니다.
  1. 상단 도구 탭 -> 옵션
  2. Source Control -> 플러그 인 선택
  3. AnkhSVN 선택 후 확인
비주얼스튜디오 버전 관리 바꾸는 방법
비주얼 스튜디오 설정에서 기본적으로 사용하는 버전관리 프로그램을 바꿔줘야합니다.



비주얼 스튜디오 프로젝트 가져오기

비주얼 스튜디오에서 SVN을 이용해 프로젝트 가져오기를 하기 위해서는 아래의 과정을 거치면 됩니다.
  1. 파일 -> Subversion -> Open from Subversion 클릭
  2. Url 우측의 아이콘 클릭 후 나타나는 팝업창에서 URL 입력
  3. SVN 계정정보 입력
  4. 가져온 프로젝트에서 솔루션 파일 및 프로젝트 파일을 클릭
SVN_Server_URL_주소가져오기
AnkhSVN도 URL을 기반으로 프로젝트를 가져옵니다.


한 폴더 안에 여러 개의 솔루션 및 프로젝트를 가져오기 위해서는 tortoiseSVN이 낫고, SVN 트랜잭션(commit, update 및 history 뷰) 등의 기능을 사용하기 위해서는 개발툴 안에서 다이렉트로 사용할 수 있는 AnkSVN을 이용하는 게 생산성에 더 도움이 된다고 생각합니다.