이리저리 혼자서 핑계대면서 미루다가, 결국 필요해서 설치해버렸다.
결심하기까지가 오래 걸려서 그렇지 실제 진행은 삽질 몇 번으로 끝나버렸다.
1. 시작하기
소스 저장소로 사용할 서버에 svn1clicksetup을 이용해서 설치했다.
중간중간 에러가 있지만, 무시하고 넘어가면 대충 다 설치가 된다.
일단, 웹 인터페이스를 사용하지 않고 내부에서만 쓸 것이기 때문에 별도의 설정은 하지 않았다. (그래서 편했다)
2. 설정하기
저장소에 아이디/패스를 만들어주고, 적절하게 접근 권한을 주었다.
저장소 경로/conf/passwd
저장소 경로/conf/svnserve.conf
요런 파일들을 적절히 수정해주면 된다.
3. 준비하기
개발자 PC에 TortoiseSVN과 ankh를 설치했다.
각각 탐색기, VS.NET IDE와 통합되어서 편리하게 Subversion을 쓸 수 있는 툴이다...만 ankh는 너무 느슨하고, 불안전하다는 생각이 든다. SourceSafe를 쓰던 나로써는 ankh수준의 통합은 적응하기 너무 힘들다. 특히나 Subverion을 처음 써보기 때문에 이래저래 삽질을 더 했던 것 같다. zplanet님도 TortoiseSVN을 쓴다고 한다.
4. 구축하기
CruiseControl.NET을 설치하고 설정했다.
소스가 받아지지 않는 것 때문에 망설였었는데, 역시나 zplanet님이 처음 한 번 소스를 받고 나서 Update가 되는 것에 대해서는 알아서 지워주고, 추가해준다고 얘기를 해주셔서 빨리 설정을 끝낼 수 있었다.
이런 점에 대해서는 SourceSafe와의 통합보다 더 좋은 것 같다. SourceSafe와 했을 때는 저장소에서 삭제된 팡리에 대해서 추적할 방법이 없었기 때문에, 항상 소스를 지우고 다시 받았어야 했다. (작을 때는 문제가 안되어도, 규모가 커지면 이 부분의 문제가 심각한다. 빌드 타임의 대부분을 잡아 먹는다.)
5. 이제 뭐하지
이로써 대략적인 빌드 시스템 완료~
나머지는 NAnt 빌드 스크립트를 가지고 단위 테스트(NUnit), SourceMonitor 실행, 배포 등을 설정해주면 된다.
앞으로 추가해야 할 부분은 NCover를 이용한 단위 테스트의 도달 여부 파악. 빌드 구분을 정해서 Commit Time/Daily/Release 등의 구분을 두는 일. 정도일까나..?
.NET Framework 2.0과 VisualStudio 2005 제품군을 사용하게 된다면 MSBuild를 사용하게 될테니 미리 공부해 보는 것도 나쁘지 않을 듯 하다.
제루 Season 2, @Tokyo
(어쩌다 merge할때 이상해져버린 경험을...)
쓰기편한 조합은 TortoiseSVN + WinMerge인듯해요
그나저나 요즘 힘드시나 봐요 -_
힘내세요~
ankh 쓰다보니 정말 덜덜해서 못쓰겠다. ㅠㅠ
얼만큼 커밋되었는지 보는 용도로 쓰는중..