버전 관리 시스템 추천(Git and Mercurial)
버전 관리, 형상 관리, 소스 코드 관리등 이름이 무엇이든 상관은 없다.
당신의 팀에서 사용하고 있다면 다른건 몰라도 코드를 관리하고 있는 개발팀이다.
지금이라도 버전 관리를 도입하기 위해 알아보고 있는 분들을 위해 간단한 정리를 해본다.
누구에게 필요한가 소스 코드를 작성 혹은 관리하는 모든 개발자(이유 없음 무조건 사용) 파일에 대한 변경 이력 관리가 필요한 사람(디자이너, 기획자 등등)
버전 관리 시스템이란
코드의 변경 사항을 저장하여 변경 이력 및 작업자 추적이 가능하고, 과거 코드로 쉽게 변경 할수 있게 도와준다.
사용해야되는 이유 소스 백업이 편하다. 빌드 후 버그 발생 시 빌드 이전 소스로 복구가 편하다. 다수 작업자 혹은 다른 장소에서의 소스 동기화가 편하다. 동일 소스에서 동시에 다른 프로젝트가 진행 될때 소스 병합이 편하다. 어느 시점에 누가 무슨 이유로 소스를 변경했는지 확인이 편하다
버전 관리 시스템 추천
아래에 버전 관리 시스템에 대해 나열해 두었지만 선택하려는 당신에게 딱 2개의 시스템을 추천한다.
다른거 찾아봐야 글만 봐서는 이해하기 힘들고 장단점 찾아봐도 결국은 머리만 아프다. Git 분산 버전 관리를 배우고 싶은 자 (패키지가 컴팩트하여 확장 설정하면서 자연스럽게 배울수 있을지도) Github에서 소스 코드 좀 검색해본 자 버전 관리 시스템을 직접 선택하기 어려운 자 (대세를 따라서 일단 시작해보자.) Mercurial 버전 관리 시스템을 처음 도입하려는 자 (윈도우 GUI가 Git보다 잘되어 있다.) SVN 사용하고 있는 소스 코드를 변경하고 싶은 자 Git 사용하기 싫은 자
Git, Mercurial 2개를 선택한 이유는 무료이고, 굳이 분산 저장소를 안쓸 이유도 없어서다.
Git vs. Mercurial Git Mercurial 라이센스 GNU GPL GNU GPL 구현 언어 C, Bourne Shell, Perl Python (Binary diff만 C로 구현) 변경 이력 모델 스냅샷(Snapshot) 패치(Patch) 브랜치 병합 n-Way 2-Way Git은 수많은 …