본문 바로가기

Window Programming/Program 일반

[KLDP] 코드관리툴 subversion

http://wiki.kldp.org/wiki.php/Subversion

Subversion
- CVS(Concurrent Version System)를 대체하기 위해 개발중인 버전 관리 시스템


1 Subversion


Subversion 클라이언트에는 문서: Q&A:
  1. "connection is read-only"라는 에러가 나요!: [http]http://bbs.kldp.org/viewtopic.php?t=65908

2 Subversion의 장점


  • 커밋 단위가 파일이 아닌 체인지셋입니다. CVS에서라면 여러 개의 파일을 한꺼번에 커밋하더라도 각각의 파일마다 리비전이 별도로 붙습니다. 반면 Subversion에서는 파일별 리비전이 없고 한번 커밋할 때마다 전체 변경 사항에 대해 리비전이 하나씩 증가합니다.

  • CVS에 비해 엄청나게 빠른 업데이트/브랜칭/태깅 시간. 한 예로 같은 100MB 트리를 업데이트했더니 CVS보다 21배 빨랐습니다.

  • CVS와 매우 유사한 사용법. CVS 사용자라면 누구나 어려움없이 금방 배울 수 있습니다.

  • 파일 이름 변경, 이동, 디렉토리 버전 관리도 지원. CVS는 이것을 지원하지 않습니다.

  • 원자적 커밋. CVS에서는 여럿이 동시 커밋할 때 종종 충돌이 발생하는데 Subversion에서는 더 이상 그런 일이 없어졌습니다.

  • 양방향 데이터 전송으로 네트워크 소통량 최소화.

  • 트리별, 파일별 접근 제어 리스트. 저장소 쓰기 접근을 가진 개발자라도 아무 소스나 수정하지 못하게 조절할 수 있습니다.

  • 저장소/프로젝트별 환경 설정 가능

  • 확장성을 염두에 둔 구조, 깔끔한 소스

  • 커밋 통지 메일 스크립트 기본 제공. CVS에서라면 스크립트를 따로 구해서 써야 하는 번거로움이 있었지만, Subversion은 기본 제공 스크립트를 이용해서 훨씬 손쉽게 설정이 가능합니다.