문제

GIT에서는 GIT 하위 모듈 인 라이브러리의 로컬 구성 파일을 추적하기 위해 작업을 구성 할 수있는 방법은 무엇입니까?

세부 사항 :

라이브러리에는 추적 된 일반 파일과 폴더에 있지만 추적되지 않은 기본 구성 파일이 있습니다. 재설정 또는 덮어 쓰기를 피하기 위해 (.gitignore에 나열됨). 모든 파일은 LIB의 폴더 또는 하위 폴더에 있습니다.

나는이 lib를 사용하는 프로젝트 중 하나를 추적하기 시작했습니다. 이제 딜레마가 있습니다.

  • 이 프로젝트에서 LIB를 하위 모듈로 만드는 경우 구성 파일을 추적 할 수 없습니다 (Git은 하위 모듈 폴더에 있으므로 무시합니다).

  • 내가 이해하는 것처럼 모든 것을 큰 프로젝트로 추적하는 것은 나쁜 생각입니다.

  • 만약 내가 하다 라이브러리에서 구성 파일을 추적하면 기본값으로 재설정하지 않으려면 어떻게해야합니까? 작업 프로젝트에서 지점을 만들고 매번 마스터에서 가져 오나요? 그렇다면 라이브러리와 구성 파일을 편집하면 어떻게됩니까? 이것은 병합 충돌을 일으켜야합니다. 그렇지 않습니까?

나는 이것이 새로운 것이 아니라고 생각하지만 조언을 찾을 수 없었습니다. 당신의 경험을 가진 사람들로부터 배우는 것에 감사드립니다.

도움이 되었습니까?

해결책

기본 프로젝트 디렉토리에서 구성 파일을 추적하고 Symlink를 라이브러리 하위 디렉토리에 넣으시겠습니까?

git add lib.conf
ln -s ../lib.conf lib/

아니면 내가 뭔가를 그리워합니까?

다른 팁

하위 모듈을 사용하는 경우 컨테이너 (여기 : LIB를 사용하는 프로젝트)로 인해 수정을 피해야합니다. 하위 모듈의 기록에 대한 새로운 개정이 생길 것입니다.

예를 들어 LIB가 구성을 참조하는 것이 가능할 것입니다. 주형 다음의 기본이 될 수있는 파일

  • 기본 값 구성 파일 생성 생성 (LIB에는 기본값 파일이 보관되어 있으며 완전하지만 추적되지 않은 구성 파일을 생성하는 데 사용할 수 있습니다)
  • 또는 사용자 정의 구성 파일 생성 (프로젝트에는 고유 한 구성 파일 값이 있으며이를 사용하여 LIB가 아닌 구성 파일 내의 동일한 위치에서 생성).

"Tokenized 값이있는 구성 파일 템플릿 및 해당 config.template 파일을 비공개 (및 무시 된) 구성 파일로 변환하는 스크립트"는 내가 제안한 접근법입니다. 따라서 병합 관리에 대한 질문.

구성 파일에 대한 다른 일반적인 조언은 이것에서 찾을 수 있습니다. 그래서 질문.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top