현재 bash (https://github.com/magicmonty/bash-git-prompt)에 대한 자식 프롬프트 프로젝트를 유지하고 있으며 Docker에서 일하는 사람이 버그 프롬프트 (https://github.com/magicmonty/bash-git-prompt/issues/97)를 받았는데 프롬프트를 사용할 때마다 캐시가 무효화되고, 왜냐하면 .git
디렉토리는 지속적으로 접촉하기 때문입니다.누군가 "git status"가 .git 디렉토리를 터치하는 이유를 설명 할 수 있습니까?
나는 이것을 조사해 git status
이라는 명령으로 .git
디렉토리를 처리한다는 것을 알아 냈습니다. 그것은 디렉토리 엔트리 그 자체와 아무런 내용도 만지는 것처럼 보입니다. 누구나 설명 할 수 있습니까? 왜 이것이 필요한지, 아니면 Git의 버그 일 수 있습니다.
.git 디렉토리를 건드리지 않고 모든 상태 정보를 표시 할 수있는 방법이 있습니까? 도움을
감사
업데이트 :
git status
명령을 사용하려면 전체 이유 이었기 때문에
, 나는 잠금을 필요로하지 않는, git ls-files --others --exclude-standard | wc -l
로 대체, 비 추적 파일의 수를 결정하는 .
'strace git status'를 보면,이 동작은 lockfile'.git/index.lock'을 사용한다는 것을 알 수 있습니다. –