중첩된 Git 저장소가 있는데 이로 인해 문제가 발생합니까?

중첩된 Git 저장소가 있는데 이로 인해 문제가 발생합니까?

역사

  1. etckeeper를 설치했어요
  2. 나는 해안벽 방화벽 구성을 자체 Git 저장소로 추적하기로 결정했습니다. 특정 구성 변경 사항을 더 쉽게 확인할 수 있었으면 좋겠습니다. 나는 더 이상 etckeeper가 필요하지 않다고 판단하고 이를 제거했습니다. 그러니 갈등은 없지만...
  3. etckeeper를 재검토하는 동안 실제로 /etc/.git.

깨닫기 전에는 이것이 git init중첩된 Git 저장소 생성을 거부할 것이라고 생각했습니다.

etckeeper를 계속 사용한다면 내부 .git 디렉토리를 추적하는 데 외부 git이 비대해질 수 있다는 우려가 있습니다. 또는 무시할 수 있습니다.모두디렉터리의 파일은 별도의 git 저장소입니다.

그래서 궁금합니다. 무엇이 잘못될 수 있나요?

답변1

중첩된 Git 저장소를 사용한 첫 번째 테스트에서는 이러한 세 가지 문제가 발생하지 않았습니다. .git을 추가 할 필요는 없습니다 gitignore. 모든 디렉터리의 내용은 .git자동으로 무시됩니다.

다른 파일(예: 와 동일한 디렉터리에 있음 .git)은 외부 저장소에 커밋될 수 있습니다.

따라서 etckeeper는 모든 파일을 추적할 수 있고 하위 디렉토리는 특정 저장소 내에서 해당 기록을 더 주의 깊게 기록할 수 있다고 생각합니다. 두 역사는 서로에 대해 아무것도 모른다.

나중에서야 문제를 발견했습니다. git 저장소 디렉토리를 커밋할 때그리고커밋 자체를 포함합니다.그리고해당 디렉터리의 파일을 외부 저장소에 커밋하지 않았는데 Subproject콘텐츠가 커밋 ID로만 표시됩니다. gitk으로 표시하는 것 같습니다 Submodule.

git이 정말로 그것들을 로 인식하고 싶어하는 것처럼 들립니다 git-submodule. 나는 그것을 특별히 이해하지 못하지만 git-submodule, 그것이 약간 혼란스럽다는 것만 알고 있습니다.

또한 git이 하위 모듈을 사용하는 경우에도 .etckeeper파일이 디렉토리에 있는 파일로 인해 부풀어오르는 것을 확인했습니다 ..git

관련 정보