0

우리가 릴리스 환경 (QA, 준비, 프로덕션)에 대한 릴리스 지점이있는 프로젝트에서 분기 구조를 개발하려고합니다. 환경 별 파일/코드로이 세 가지 분기를 만들었습니다. 내 계획은 개발 트렁크에서이 릴리스 지점으로의 변경 사항을 병합하는 것이지만 환경 관련 파일/코드를 덮어 쓰지는 않습니다. 릴리스 분기로 병합 할 때 업데이트되지 않도록이 파일을 단순히 '잠글 수 있습니까?SVN 변경에서 지점에 파일을 방지

아마도 우리의 출시 워크 플로우에 대한 더 나은 시나리오가있을 수 있습니다 ... 내가 잘못된 경로에 있다면 알려주십시오.

감사합니다.

답변

1

나는 잘못된 길을 걷고 있다고 말하고 싶지 않지만 다시 생각해 보라고 제안합니다. 병합에는 시간이 필요하며 오류를 도입 할 수있는 기회입니다. 나는 당신이 당신의 릴리즈를 한 번 빌드하고 dev/test/stage 그리고 마침내 production을 통해 더 잘 홍보 할 수있을 것이라고 생각합니다.

이렇게하면 변경 사항을 추적하고 파일을 더 쉽게 추적 할 수 있습니다.

사용중인 언어/툴링/플랫폼에 대해 언급하지 않았습니다 ... 이것은 릴리스에서 구성을 추상화하거나 초기 빌드 및 구성 중에 모든 환경에 대한 구성을 빌드하는 데 다소 시간이 걸릴 것입니다 현재 환경에 적합한 구성을 사용하기위한 배치/설치.

이제 직접 질문에 대답하십시오. 병합 할 때 파일을 '잠그는'좋은 방법이 없습니다. 패스 기반 인증이나 사용자가이를 확인할 수 없도록하는 훅 스크립트를 사용하면 이렇게 할 수 있습니다. 이렇게하려면 커밋하기 전에 영향을받는 파일을 되돌려야합니다. 이는 작동하는 것처럼 보일지 모르지만, 새 config 요소가 트렁크에 추가되고 실제로 테스트 분기에 병합하기를 원하는 경우에만 시간 문제입니다.