이렇게 보이는 git repo가 있다고 가정 해 봅시다.
foo/
.git/
A/
... big tree here
B/
... big tree here
git log에게 특정 디렉토리에 대한 로그 메시지 만 표시하도록 요청하는 방법이 있습니까? 예를 들어 foo / A에서만 터치 파일을 커밋하는 것을보고 싶습니다.
답변
디렉토리 foo/
에서
git log -- A
당신은 필요 ‘-‘분리 <path>..
로부터 <since>..<until>
refspecs.
# Show changes for src/nvfs
$ git log --oneline -- src/nvfs
d6f6b3b Changes for Mac OS X
803fcc3 Initial Commit
# Show all changes (one additional commit besides in src/nvfs).
$ git log --oneline
d6f6b3b Changes for Mac OS X
96cbb79 gitignore
803fcc3 Initial Commit
답변
답변
git log
각 폴더의 경로 이름과 함께 사용할 수 있습니다 .
git log A B
로그에는 A
및 에서 이루어진 커밋 만 표시됩니다 B
. 나는 보통 --stat
물건을 조금 더 예쁘게 만들기 위해 던져서 빠른 커밋 검토에 도움이됩니다.
답변
시작하다
git log .
특정 디렉토리에서 해당 디렉토리에 커밋도 제공합니다.
답변
폴더가 이동 한 폴더의 변경 사항을 추적하기 위해 다음을 사용하기 시작했습니다.
git rev-list --all --pretty=oneline -- "*/foo/subfoo/*"
이름이 같은 다른 폴더를 가져 오기 때문에 완벽하지는 않지만 고유 한 경우 작동하는 것 같습니다.
답변
다른 답변은 변경된 파일 만 표시합니다.
git log -p DIR
특정 서브 디렉토리에서 변경된 모든 파일 의 전체 diff 가 필요한 경우 매우 유용합니다 .
예 : 특정 버전 범위의 모든 세부 변경 사항 표시
git log -p 8a5fb..HEAD -- A B
commit 62ad8c5d
Author: Scott Tiger
Date: Mon Nov 27 14:25:29 2017 +0100
My comment
...
@@ -216,6 +216,10 @@ public class MyClass {
+ Added
- Deleted