Git에서 개별 파일의 변경 히스토리를 어떻게 볼 수 있습니까?
나는 다음과 같이했습니다.
git log -- [filename]
파일의 커밋 기록을 보여 주지만 각 파일 변경 내용을 어떻게 알 수 있습니까?
나는 MS에서 SourceSafe 전환을 만들려고 노력하고 단순하게하는 데 사용 해요 right-click
→ show history
.
답변
이를 위해 다음을 사용합니다.
gitk [filename]
또는 이름을 변경 한 파일 이름을 따르려면
gitk --follow [filename]
답변
당신이 사용할 수있는
git log -p filename
git이 각 로그 항목에 대한 패치를 생성하도록합니다.
보다
git help log
더 많은 옵션-실제로 많은 좋은 일을 할 수 있습니다 🙂 특정 커밋에 대한 차이점을 얻으려면
git show HEAD
또는 식별자에 의한 다른 수정. 또는 사용
gitk
변경 사항을 시각적으로 찾아 볼 수 있습니다.
답변
git log --follow -p -- path-to-file
파일 의 전체 히스토리 가 표시 됩니다 (이름 변경 이후의 히스토리 및 각 변경에 대한 차이점 포함).
다시 말해, 이름 bar
이 지정된 파일의 이름 이 한 번만 지정된 foo
경우 git log -p bar
( --follow
옵션 없이 ) 파일의 이름은 이름이 바뀐 지점까지만 파일의 기록을 표시합니다 foo
. 를 사용 git log --follow -p bar
하면 파일의 알려진 변경 사항을 포함하여 파일의 전체 기록이 표시됩니다 foo
. 이 -p
옵션을 사용하면 각 변경마다 diff가 포함됩니다.
답변
텍스트 기반을 유지하려면 tig 를 사용하십시오 .
빠른 설치:
- apt-get :
# apt-get install tig
- 사제 (OS X) :
$ brew install tig
단일 파일에서 히스토리를 보려면 다음을 사용하십시오. tig [filename]
또는 자세한 리포지토리 히스토리를 찾아보십시오.tig
gitk
텍스트 기반과 유사합니다 . 터미널에서 색상을 지원합니다!
답변
git whatchanged -p filename
git log -p filename
이 경우 에도 마찬가지입니다.
파일 내부의 특정 코드 줄이로 변경된시기도 확인할 수 있습니다 git blame filename
. 파일의 모든 줄에 대해 짧은 커밋 ID, 작성자, 타임 스탬프 및 전체 코드 줄이 인쇄됩니다. 버그를 발견 한 후 버그가 발생한 시점 (또는 결함이 누구인지)을 알고 자 할 때 매우 유용합니다.
답변
SourceTree 사용자
SourceTree를 사용하여 리포지토리를 시각화하는 경우 (무료이며 상당히 좋음) 파일을 마우스 오른쪽 단추로 클릭하고 선택한 로그를 선택할 수 있습니다.
디스플레이 (아래)는 gitk 및 대부분의 다른 옵션보다 훨씬 친숙합니다. 불행히도 (현재) 커맨드 라인에서이 뷰를 쉽게 시작할 수있는 방법은 없습니다 – 현재 SourceTree의 CLI는 repos를 엽니 다.
답변
파일의 각 행을 마지막으로 수정 한 개정 및 작성자를 표시하려면 다음을 수행하십시오.
git blame filename
또는 강력한 비난 GUI를 사용하려는 경우 :
git gui blame filename