1
사용 사례 :힘내 : 파일의 특정 섹션에 대한 변경 사항을 조회하는 방법이 있습니까?
나는 전혀 이해하지 못하는 코드를 발견합니다. 이 코드가 작성된 시간적 맥락과 코드의이 부분이 수행 한 모든 변경 사항을 찾고 싶습니다.
이 파일의 기록은 기본적으로 [34 줄부터 38까지 (예 :)로] 교차하는 히스토리의 부분 만 조회합니다.
이 명령은 git log -p <file> | grep <some snippet matching mysterious code>
보다 유용하며 log -p
출력으로 돌아가 거기에서 diff의 컨텍스트를 확인합니다.
슬픈 점은 내가이라고 쓰여진 코드를 검토 할 때 종종 이런 종류의 기능이 필요하다는 것을 알게된다는 것입니다.
흠을 볼 포인트 또는
git diff <commit> <commit> -- <path>
을 커밋에 전체 파일을 볼 수git show <commit>:<path>
를 사용할 수 있습니다. 괜찮아. 이렇게하면 각 줄을 마지막으로 편집 한 시간을 찾는데 도움이되지만 필자가 찾고있는 곳으로 이어지지는 않습니다. 주위를 둘러 봐야하는 시간대를 좁히는 데 도움이되지만 사용하기 쉬운 뭔가를 원한다면 코드의 특정 부분이 변형 된 것을 알 수 있습니다. –관심있는 문자열에 대한 비난 결과를 grep 할 수 있습니다 (줄 번호 - 사례의 경우 - 코드가 기록을 통해 위아래로 이동할 수 있기 때문에 작동하지 않음) –
@Steven Lu ... '비난' '(또는'diff') 내가 아는 유일한 방법입니다. –