개인용 CVS 서버를 구축하다. 랄랄라~

saxboy의 이미지

하하핫. 드디어 오랜 숙원이었던 개인용 소스관리 서버를 구축했습니다. 이틀정도를 OS 설치하고 하드에 있던 소스들 정리해서 임포트하느라고 시간을 보낸것 같네요. 아직 컴퓨터와 인연을 맺고 살면서 만들어오던코드를 다 임포트한건 아닌데, 80퍼센트 이상 넣어두고나니 정말 뿌듯하군요.
회사에서 개발한 소프트웨어중에 개인적으로도 꼭 쓰고 싶은 C/S 소프트웨어가 하나 있는데, 이 놈을 위한 서버로도 사용할까 생각중입니다.

사실은 코딩은 꽤 오래해왔는데, 별로 자료관리를 열심히 하는 편이 아니다보니 && 하드도 몇번 날려먹다보니 대학교 졸업하던때까지의 코드는 "완전히" 소실된 상태입니다. 그동안 회사에서 또는 개인적으로 작업했던 코드들도 노트북과 데스크탑에서 몇번 복사하면서 왔다갔다하다보니 버전이고 뭐고 없어서 사라진 코드도 꽤 되니 아깝다는 생각이 들어서 이참에 한대 셋업을 해 두었지요. 하던 일의 특성상 데이터들이 꽤 크고, 문서같은 것도 전부 함께 cvs로 관리를 하다보니 레퍼지토리가 2기가가 넘는 웃기는 일이 생겼지만, 중복되는 것도 지워나가고 하다보면 차차 줄어들겠지요.

cron 으로 자동으로 백업해두도록 스크립트도 만들어두고 데스크탑에서 체크아웃하는 그 기분이란 정말 말로 표현이 되질 않더군요. :D

제 cvs 서버 사양입니다.

P2-300, 192MB, 10G( 시스템 및 /home/cvs ) + 4G( /backup )
FreeBSD-5.1 beta + cvs, cvsweb, viewcvs, cvsgraph, smb, swat

이왕 새로 만드는 것인데 subversion 으로 할까 심각하게 고민했지요. delta에만 비례한다는 점에 혹했는데, 문서를 읽다가 repository에 한번 커밋이 될때마다 전체 리비전이 올라간다는 말을 보고는 깨끗하게 잊어버렸습니다. 나중에 이 문제가 해결되면 다시 subversion 으로 바꿔볼까 싶어요.

아... 물론 자랑입니다. :)
더 좋은 운영을 위한 조언이나, 훌륭한 cvs 관련 visualization 툴등에 대한 조언은 감사히 받겠습니다.

음. 무척 기분이 좋군요. :D

ydongyol의 이미지

저도 이제부터 CVS를 써보려고 합니다.. 추천하는 툴버젼이나 설치&관리 tip있으시면 올려주시면 고맙겠습니다..

--
Linux강국 KOREA
http://ydongyol.tistory.com/

pynoos의 이미지

viewcvs의 enscript와 cvsgraph option을 사용하면, 훌륭한 Syntax highlighting을 볼수 있고,

Revision을 그래프로 볼 수 있습니다.

cvsweb에서도 지원하는지는 확인안해봤습니다.

raymundo의 이미지

저도 제 홈페이지가 있는 계정에 슬쩍 CVS 디렉토리를 만들어두고 쓰는데... 아무래도 repository 를 남들과 같이 쓰는 서버에 두는 게 좀 그런가 싶기도 하네요.

그렇다고 제 집에 있는 컴퓨터에 두자니... 평소에 켜놓고 ADSL 에 물려 있으니 외부에서 작업을 할 수는 있습니다만, 만일 저는 집 밖에 있는데 중요한 순간에 집의 모뎀이 꺼지거나 정전이 되거나 하면 완전히 낭패라는 단점이 있네요. cvs 를 실행할 때마다 갈등합니다. -_-;;

참참, 여기서 질문 하나, 만일 A 서버에 있던 repository 를 B 서버로 옮기고 싶다면 그냥 디렉토리를 통채로 복사하면 되려나요? 그게 안 된다면 죄다 update 후 새로 import 를 하라는 얘기인데... -_-;;

좋은 하루 되세요!

pynoos의 이미지

네.. 통째로 복사하면 됩니다.

raymundo의 이미지

네 감사합니다. 일단 repository 이동 문제는 그럼 걱정할 필요가 없는 것이고... 제가 그 위에 적은 문제는 다른 분들은 어떻게 하시는지도 궁금합니다.

요는, "내 전용 cvs 서버"를 어디에 두느냐인데,
1) 내 방에 있는 내 컴에 둔다 - 내 작업물을 내 컴에 보관하는 것이니 제일 무난해 보이기는 하는데, 갑자기 ADSL 끊겨서 외부에서 접근이 안 된다면? 또는 그 중 일부는 남에게 배포하고 싶다면? (내 컴은 잘 때는 꺼두는 것이니) 등등의 문제가 있네요.

2) 내 홈페이지가 있는 서버, 내 회사나 학교 서버 등에 둔다 - 거의 항상 24시간 내내 켜져 있기 때문에 1)에서의 문제는 없는데... 남들과 같이 쓰는 서버에 그런 걸 두는 것도 괜히 그렇고, 프로그램 한 두 개도 아니고 첫 글을 쓰신 saxboy 님처럼 저장소가 GB 단위로 커진다면 곤란

3) 그럼 필요에 따라 두 곳에 따로 두면 되지 - 뭐 그러면 되긴 할텐데... 이런 게 여러 곳에 나눠져 있으면 그도 괜히 기분 나빠서.. (어쩌란 말인지... -_-a)

당연히 정답! 같은 것은 없겠지만, 다른 분들의 사례라도 들어보고 싶네요.

좋은 하루 되세요!

방준영의 이미지

saxboy wrote:
P2-300, 192MB, 10G( 시스템 및 /home/cvs ) + 4G( /backup )
FreeBSD-5.1 beta + cvs, cvsweb, viewcvs, cvsgraph, smb, swat

CVS 저장소처럼 중요한 정보를 불안정한 버전에서 돌리는 건 별로 바람직하지 않은 듯... 참고로 저는 4_STABLE 씁니다. 8)

Quote:
이왕 새로 만드는 것인데 subversion 으로 할까 심각하게 고민했지요. delta에만 비례한다는 점에 혹했는데, 문서를 읽다가 repository에 한번 커밋이 될때마다 전체 리비전이 올라간다는 말을 보고는 깨끗하게 잊어버렸습니다. 나중에 이 문제가 해결되면 다시 subversion 으로 바꿔볼까 싶어요.

프로젝트별로 저장소를 따로 만들면 됩니다. 전체 리비전이 올라가는 것은 subversion의 장점이죠.
bh의 이미지

말로만 듣고 있었는데,,
CVS가 그렇게 좋은가요..?

--
이 아이디는 이제 쓰이지 않습니다.

youlsa의 이미지

저는 집에 안쓰는 컴을 회사에 가져다 놓고 IP하나 얻어서 개인 CVS 서버로 쓰고 있습니다. Pentium 120MHz라는... -_-;; 느리긴 하지만 이 용도로는 충분한 성능이네요. 좀 불안하기도 해서 CVS 저장소 부분은 cron으로 회사의 다른 컴의 제 계정으로 싱크하고 있습니다.

=-=-=-=-=-=-=-=-=
http://youlsa.com

Necromancer의 이미지

회사가 고정IP라서 CVS 돌리고 있고요.

컴터를 24시간 내내 켜놓고.

이전에 회사 프로젝트 하나 버전관리없이 하다가 한번 크게 당했습니다.

Written By the Black Knight of Destruction

saxboy의 이미지

Quote:
참참, 여기서 질문 하나, 만일 A 서버에 있던 repository 를 B 서버로 옮기고 싶다면 그냥 디렉토리를 통채로 복사하면 되려나요? 그게 안 된다면 죄다 update 후 새로 import 를 하라는 얘기인데... -_-;;

복사하면 될뿐만 아니라 CVSROOT를 제외한 다른 디렉토리들은 그냥 일반 파일들처럼 여기저기 옮겨붙여도 상관없습니다. 저는 레퍼지토리 구조를 전부 손으로 새로 편집했지요. 하하...