SCM을 바꾸기엔 무리가 있었고 같은 MS툴인 Visual Studio에도 제대로 붙지 않았습니다. VSS자체가 프로젝트 기반으로 되어 있기 때문에 닷넷등의 개발에는 괜찮았지만 프로젝트 단위로 진행되지 않는 ASP같은 경우에는 Visual Studio에서 제공하는 VSS연동 기능을 전혀 사용할 수 없었기 때문에 별도의 VSS 클라이언트를 통해서 Check In/Out을 한 뒤에 소스수정을 해야했는데 이런 SCM행위자체가 개발성능을 떨어뜨린다고 느껴졌기 때문에 보통 불편한 것이 아니었습니다. Visual Studio에서 파일을 찾고 수정이 필요하면 VSS클라이언트에서 같은 파일 찾아서 체크아웃하고 수정끝나면 코멘트 남기면서 체크인을 해야하는 일련의 흐름은 소스형상관리의 장점을 무색하게 할만큼 번거로운 일이었습니다.
SVN에 어느정도 익숙해 져있기 때문일 수도 있겠지만 저는 VSS보다 SCM이 훨씬 좋게 느껴졌습니다. 그 가장 큰 이유중에 하나가 형상관리가 SVN은 commit단위인데 반해 VSS는 파일단위로 이루어졌습니다. 하나의 기능 추가 또는 수정을 하기 위해서는 보통 여러개의 파일을 손댈 수 밖에 없는데 그럴경우 SVN은 commit하면서 코멘트를 한번만 남기면 되고 해당 리비전을 통해서 관련된 파일은 쉽게 파악할 수 있는데 반해서 VSS는 파일단위라서 체크인할 때마다 같은 내용의 코멘트를 남겨야 하고 이 커멘트를 통해서 관련된 파일을 찾아내야 합니다. 또한 VSS는 Lock방식이기 때문에 실제 수정을 하지 않더라고 로그를 찍어보기 위해서 잠시 파일을 수정하는 것 때문에도 체크아웃을 해주어야 했습니다. VSS만의 장점을 제가 못 느낀 것인지는 모르겠지만 저한테는 SVN쪽이 형상관리라는 면에서 더 좋다고 느껴지더군요.
그래서 여러가지 알아본 뒤에 이클립스로 IDE를 변경하기로 했습니다. 그러자면 이클립스에서 VSS를 사용해야 했기에 VSS Plugin을 설치했습니다. 저는 1.6.2버전을 사용했고 여기에는 Eclipse 3.3 Europa를 지원한다고 써있지만 3.4 Ganymede에서도 잘 돌아가고 있습니다.(아직까지는...) 플러그인 설치가 완료되면 [Preference] - [Team] 에 VSS란이 생긴 것을 볼 수 있고 여기서 여러가지 옵션을 설정할 수 있습니다.
프로젝트의 메뉴에서 Team - Share Project에 가면 해당프로젝트에 대한 SCM을 설정할 수 있습니다.
이미 설치되어 있는 CVS와 SVN이 리스트에 나오고 새로 설치된 VSS Configuration Wizard도 나타납니다. VSS를 사용할 것이므로 VSS를 선택합니다.
VSS 서버 설정을 합니다. 당연히 VSS 서버는 설정되어 있다는 가정하입니다. 사용자 아이디와 비밀번호를 지성하고 VSS Directory에 VSS서버의 위치를 지정합니다. Source dir는 현재 이클립스 프로젝트의 위치이고 Relative mountpoint는 VSS서버와 매핑할 위치입니다. VSS 전체를 연결하는 것이 아니라 그 아래 특정한 폴더만 따로 매핑시킬 수 있습니다.
설정된 프로젝트의 Properties의 VSS Mappings를 보면 설정된 매핑정보다 나오고 하위프로젝트의 경로별로 추가해서 매핑시킬수 있습니다. 저로서는 이렇게 할 수 있는 부분이 제일 좋더군요 원하는 부문만 사용할 수 있어서요.
ASP 개발시에 Visual Studio에서 VSS를 쓰면서 가장 불편했던 것중 하나가 Check Out된 리스트입니다. 개발을 하다보면 여러파일을 손댈 수 밖에 없는데 Check Out한 파일을 따로 적어놓을 수도 없고 일일이 찾아다니기도 불편했습니다만 이클립스에서는 Checked Out이라는 View를 제공해서 현재 Check Out파일을 한눈에 파악할 수 있기 때문에 Check In을 놓칠 염려는 없습니다.
당연히 Check In할 때 주석을 달 수 있습니다. Preference에서 VSS부분에 Asf for comment on add/check-in에 체크를 해주어야 Check In할 때 자동으로 주석을 묻는 창이 나타납니다.
처음에는 어차피 불편한거 에디팅이나 익숙한 이클립스를 쓰려고 했지만 이것저것 찾아서 조합하고 나니까 완전히 흡족하진 않지만 제법 괜찮네요.
- Source Code Management [Back]
Comments