.png)
필요한 상대 빌드 경로와 일치하지 않는 구조를 가진 SVN 저장소가 있습니다.
SVN repo 디렉토리는 다음과 같습니다.
- 뿌리
- 알파
- 트렁크
- p1
- p2
- p3
- 꼬리표
- 나뭇가지
- 트렁크
- 브라보
- 트렁크
- p4
- p5
- p6
- 꼬리표
- 나뭇가지
- 트렁크
- 알파
필요한 빌드 디렉토리 구조는 다음과 같습니다.
- 뿌리
- p1
- p2
- p3
- p4
- p5
- p6
나는 SVN 구조를 단독으로 유지할 수 있기를 원합니다. 그 이유는 실제로 조정할 수 있는 능력이 없기 때문입니다. 또한 트렁크에 다른 항목(예: 알파 버전의 p7)이 추가되면 빌드 디렉터리에 해당 항목이 자동으로 추가되기를 바랍니다. 빌드가 작동하려면 p1 내부에서 cd ../p2/와 같은 명령을 실행하고 p2 폴더로 이동할 수 있어야 합니다.
나는 어떤 형태의 연결이 나에게 필요한 경로라고 생각하지만 이에 접근하는 방법에 대해서는 약간 혼란스럽습니다.
미리 감사드립니다.
답변1
이를 수행하는 한 가지 방법(SVN만 사용)은 루트 아래에 세 번째 프로젝트를 생성하고 이를 "빌드"라고 부르는 것입니다. 원하는 경우 트렁크, 태그, 가지를 정상적으로 가질 수 있습니다. "빌드" 프로젝트 내에서 makefile 등을 유지할 수 있지만 대부분 "빌드"에는 필요한 모든 구성 요소(및 적절한 개정판)를 가져오는 svn:externals 규칙만 있습니다. 그런 다음 일반 저장소 위치를 그대로 두고 원하는 디렉터리 구조를 만들 수 있습니다.
이 방법의 가장 큰 단점은 변경 사항을 커밋하기 전에 빌드하기가 더 어렵다는 것입니다. 그러나 특정 개정 대신 HEAD를 가져와야 하는 경우 svn:externals를 임시로 수정하여 "빌드" 작업 복사본에서 변경 사항을 적용하여 이를 수행할 수 있습니다.