CVS 등에서 개발 도중의 내용 관리는 어떻게 하십니까?
글쓴이: xster / 작성시간: 화, 2005/08/16 - 10:07오전
현재 3~4명이서 관리하는 프로젝트가 있습니다. 소스 코드는 서로 다른 제품 지원을 위해서 #ifdef 구문이 꽤나 복잡하게 들어가 있습니다. 한 제품에서 새 기능을 추가하기 위해선 열심히 #ifdef로 맞춰줘야 하는 상황입니다.
문제는 상당히 큰 기능 집합을 새로 추가하려고 할 때입니다. 기능이 상당히 커서 변경 사항도 많기 때문에 모든 내용을 변경하고 CVS와 같은 버전 관리 툴에 집어 넣으려고 하면 너무 오랜 기간 버전 관리가 안 되고 바로바로 집어 넣으려고 하면 변경 사항이 너무 자주 발생해서 불필요한 변경 사항에 대한 내용이 많이 들어가게 됩니다.
이렇게 상당한 크기의 기능 변경이 있고 다른 사람과 같이 작업을 하는 경우 버전 관리는 어떻게 하십니까? 혹시 저의 개발이 너무 막무가네라 너무 자주 바뀌는 것일까요?
Forums:
1. 변경사항이 너무 자주 발생 -> 그냥 commit하세요. 그게
1. 변경사항이 너무 자주 발생 -> 그냥 commit하세요. 그게 바로 CVS가 있는 이유 아닐까요? 기록이 많이 남으면 실적도 올라가는?
2. 모듈화를 고려해보심은?: 적당한 수준의 refactoring으로..
3. 다른 버전관리 시스템은 어떨까요? darcs, monotone ?
이상 일반적으로 올라올만한 다변 예상 리스트였습니다.
메인 개발은 계속 유지하면서 큰 기능 집합을 추가하거나 테스트하는 시나리
메인 개발은 계속 유지하면서 큰 기능 집합을 추가하거나 테스트하는 시나리오는 매우 일반적인 것이라서, 대부분의 버전 관리 시스템이 Branch(가지)라는 개념을 지원합니다.
CVS에도 branch를 잘 지원하고 있으니, 이를 이용하시면 됩니다.
브랜치에 대해서는 CVS 튜토리얼이나 서적에서 잘 설명하고 있으니 읽어보시면 도움이 될 것입니다.
...
cvs 로 자주 commit 하면, conflict이 있기 마련입니다.
cvs 로 자주 commit 하면, conflict이 있기 마련입니다.
이런 conflict이 자주 발생한 다는 것은 team review 없이 코드를 공유하기 때문에 발생합니다.
질문하신 분의 팀은 대화가 필요한 시점이군요.
---
http://coolengineer.com
댓글 달기