Development Tip

내가 하위 디렉토리에있을 때 로컬 git 저장소의 경로를 찾는 방법

yourdevel 2020. 11. 8. 11:21
반응형

내가 하위 디렉토리에있을 때 로컬 git 저장소의 경로를 찾는 방법


이 질문에 이미 답변이 있습니다.

git list-path관련 저장소 ( .git디렉토리) 의 경로를 인쇄하는 것과 같은 것을 찾고 있습니다.

약간의 배경 지식 : 저는 상당수의 프로젝트 / 폴더에서 git 버전 제어를 설정했습니다. 그들 중 일부는 중첩되어 있으므로 echo 자체 저장소가있는 한 디렉토리는 다른 저장소로 추적되는 다른 디렉토리의 하위 폴더입니다.

예를 들어 내 홈 디렉토리 ( ~)에서 git을 사용하여 도트 파일을 추적하지만 폴더 ~/photo/meta-mix/에는 별도의 저장소로 추적하는 다른 프로젝트가 있습니다. 이제 디렉토리에 다른 프로젝트를 설정 ~/photo/meta-match/했지만 자체 저장소가 있는지 더 이상 알 수 없습니다. 그래서이 디렉토리가 버전 관리가되는지 그리고 저장소가 어디에 있는지 알고 싶습니다.

git 명령으로 어떻게 할 수 있습니까? git status나에게 줄 수있다

nothing to commit

경우, 때 ~/photo/meta-match/자신의 저장소를 가지고 아니면 그냥의 저장소에 참조하는 경우 ~.


git rev-parse --show-toplevel

git repo 내에서 실행하면 충분할 수 있습니다.
에서 git rev-parse매뉴얼 페이지

--show-toplevel

최상위 디렉토리의 절대 경로를 표시합니다.

이전 버전 (1.7.x 이전)의 경우 다른 옵션은 " 하나의 명령으로 git 루트 디렉토리를 가져올 수있는 방법이 있습니까? "에 나열됩니다 .

git rev-parse --git-dir

그것은 .git디렉토리 의 경로를 제공합니다 .


OP는 다음과 같이 언급합니다.

git rev-parse --show-prefix

git repo 루트 아래의 로컬 경로를 반환합니다. (git repo 루트에 있으면 비어 있음)


참고 : git repo에 있는지 간단히 확인하기 위해 다음 명령이 상당히 표현 적이라는 것을 알 수 있습니다.

git rev-parse --is-inside-work-tree

예, .gitgit-dir 폴더 에 있는지 확인해야하는 경우 :

git rev-parse --is-inside-git-dir

참고 URL : https://stackoverflow.com/questions/12293944/how-to-find-the-path-of-the-local-git-repository-when-i-am-possibly-in-a-subdire

반응형