소스버전 관리에 대한 중요성을 알게 된 것은 불과 3년정도 밖에 되지 않는다. 그전에 내가 개발에 관여를 했을 때에는 각 담당별로 모듈이 정해져 있었고 그 모듈이 본체가 부를 때만 실행되는 것으로 되어져 있어서 내가 맡은 모듈만 서버에 컴파일해서 올려주면 큰 문제가 없이 구동이 되었다. 

소스 버전의 중요성은 사실 아주 간단한 것이다. 누가 언제 무엇을 수정하고 업데이트했는 지 기록을 남기자는 것이다. 또한, 중요 버전별로 마일스톤을 남기고 필요한 경우에는 각 브랜치별로 소스를 남겨야 한다는 것이다. VB를 사용할 때는 sourceSafe를 사용하게 되는 데 이게 상대적으로 좀 불편해서 안쓰다가 3년전쯤에 subVersion을 알게 되었다. 

사실 그 때도 이게 왜 필요한지 몰랐다. 이게 귀찮기만 한거 아닌가 하는 생각이 들었다. checkout 을 해야 하고 Commit을 해야하는 것에 대해서도 이해가 부족했다.

지금에서는 이게 꼭 필요하다고 생각한다. 그것은 프로젝트의 연속성측면에서 필요하다고 생각한다.  
그런데, 나처럼 처음 SubVersion을 접하면 대략 난감하다. 모든 것이 명령어로 되어져 있어서 난감하기 때문이다.

SubVersion의 매뉴얼은 웹 사이트( http://svnbook.red-bean.com/ )에서 다운이 가능하다. PDF 버전을 보길 권한다.

서브버전의 사이트( http://subversion.apache.org/ )에서 소스와 설치 파일을 다운로드 받을 수 있다. 

그러다 보니, 웹 버전의 서브버전 인터페이스가 등장했다. 그중의 하나가 이 uBerSVN (http://www.ubersvn.com/ )이다.  이 제품은 한마디로 웹에서 거의 모든 작업이 이루어지고 관리가 가능하도록 되어져 있다. 그리고 다양한 버전을 제공한다. 리눅스/윈도우즈/맥까지 지원을 하고 있다. 그리고 오픈소스를 기반으로 하여 제공되므로 무료인 점도 강점이다. 물론 기술지원을 받으려면 비용지불을 해야 한다. 그러나 굳이 기술지원 서비스를 받지 않더라도 기능이 웹 형태로 제공하기 때문에 아주 쉽게 사용가능하다. 내 생각에는 윈도우즈 설치를 할 정도의 지식과 서브버전에 일부 경험이 있다면 이 툴이 아주 좋다.

물론 공짜지만 사용자 등록은 하고 키를 받아서 활성화시켜야 한다. 

아래는 관련 슬라이드이다.

내가 있는 회사에서는 사실 아직 이 툴을 안쓴다. VisualSVN 을 사용중인데, 이유는 과거 버전으로 Test시에 내 랩탑에서 조금의 문제가 있었고, 우리가 사용하는 서버에 다른 웹서비스들이 구동중이라서 난점이 생길 까봐 사용하지 않았지만 독립적인 SVN서버를 사용한다면 이 툴이 좋은 대안이 될 것이라고 생각한다. 개인적으로는 안정성을 택했다고 보면 되지만 편의성 측면에서는 이 툴이 가장 유력한 대안이라고 생각한다. 

그리고 자바 사용하시는 분들은 아마도 허드슨이라는 CI툴을 사용하시는 것으로 알고 있다. - 참고로 난 자바를 모른다. 그런데 이 SVN서버에서는 apps라는 기능으로 통합관리도 된다. 따라서, 통합관리의 측면에서 생각하시면 좋을 듯하다.

추가적으로 기능안에는 사용자들(Committer)끼리의 협업기능도 가지고 있다. 소셜과도 일부 연동이 된다. 
개인적으로 생각하는 이 툴의 가장 큰 문제점은 좀 무겁다는 느낌이 든다. 로컬상에서 테스트를 할 때, 반응속도가 느린 점이 맥북에서나 윈도우즈 노트북에서나 발견이 되었는 데, 서버에서 돌린다면 충분할거라는 생각이 들긴 하지만 좀 무겁다는 느낌은 지울 수가 없을 거 같다 



 



댓글을 달아 주세요



티스토리 툴바