여기에 대한 질문이 있습니다. 오랜 시간 동안 당황스럽지 만 보편적 인 해결책을 찾지 못했습니다.git을 사용한 지점 별 구성 파일 유지
는 두 가지 자식 지점, production
및 dev
가 말할 수 있습니다; 각각은 일부 작업 (예 : 자격 증명, 빌드 경로, 테스트/배포 스크립트 전환 등)에 대해 자체 구성 가능한 매개 변수를 사용합니다. 같은 시간 구현 스크립트 & 코드는 두 가지 분기에 공통입니다.
이제는 문제가 발생합니다. - git 저장소 내에서 지사 별 구성을 필요한 방식으로 유지 관리하는 방법입니다. 거기 일반적인 솔루션 중 하나는 심볼릭 링크와 특정 지점의 콘크리트를 무시하고,
$ cat .gitignore | grep conf
/concrete.conf
$ ls -l *.conf
lrwxrwxrwx 1 1000 100 12 Oct 29 10:23 concrete.conf -> generic.conf
-rw-r--r-- 1 1000 100 0 Oct 29 10:16 generic.conf
차단하기 추천하고 다음으로 개발 상자에 concrete.conf
을 조정, 자식 내에서 '템플릿'구성 파일을 사용하는 것입니다. 그러나 내가 추구하는 해결책은 아닙니다.
내 요구 사항은 (확인, 이 소원)은 다음과 같습니다 자식 지점 당
- 지원 별도의 구성 파일 및
- 는 자식 같은 시간에 의해 관리 지점 별 구성 파일을 유지
심지어 가능할까요? (실제로, 다른 파일에 의해 소스 화되는 것이 선호되었지만 관련이 없습니다 ...)
내 마음에 지금까지 온 최선의 결론은 분기 후 구성을 조정하기 위해 병합 후크를 사용하는 것입니다 그 자체로는 다른 소스에서 나온이 git에서 무시되지만 아주 처음부터 악취가납니다.
설명 된 문제 해결에 대한 제안 사항은 무엇입니까?
PS : * nix에서 스크립트 관련 제안 (즉, 사용 심볼릭 링크/하드 링크) 제안이 절대적으로 괜찮습니다, 나는 M $ 그것은 가능하다
감사합니다. 이것은 언뜻보기에 합리적입니다. 나는 당신의 대답을 받아들이 기 전에 잠시 씹고 소화 할 필요가있다. – agg3l
그것은 커밋/체크 아웃/etc 후크를 자연스럽게 포함한다; 나도 내 자신을 들여다보고 있었다. 일부 후크를 사용하지 않으면 가능한 해결책이 없다고 생각합니다. 문제에 대한 논리적 인 결과는 – agg3l
이 정확히 후크는 아니지만, 네.'.gitattributes' 스머지 스크립트를 활성화하려면 로컬 설정이 필요합니다. – VonC