커밋하기 전에 파일 차이를 보는 방법
이런 일이 자주 일어납니다.
하루 이틀에 걸쳐 몇 가지 관련 변경 작업을 동시에 수행하고 있는데, 커밋할 시간이 되면 특정 파일에서 변경된 내용을 잊어버리게 됩니다. (이것은 개인적인 Gitpo일 뿐이므로 커밋에서 두 개 이상의 업데이트를 수행해도 괜찮습니다.)
체크인을 앞둔 로컬 파일과 해당 파일에 대한 마지막 커밋 사이의 변경 사항을 미리 볼 수 있는 방법이 있습니까?
다음과 같은 것:
git diff --changed /myfile.txt
그리고 다음과 같은 것을 출력합니다.
line 23
(last commit): var = 2+2
(current): var = myfunction() + 2
line 149
(last commit): return var
(current): return var / 7
이렇게 하면 마지막으로 체크인된 이후로 파일에서 수행한 작업을 빠르게 확인할 수 있습니다.
당신이 보지 못한 것을 보고 싶다면,git add
아직:
git diff myfile.txt
또는 이미 추가된 변경사항을 보려는 경우
git diff --cached myfile.txt
git diff HEAD file
마지막 커밋에서 워크트리에 추가한 변경 내용이 표시됩니다.모든 변경 사항(스테이지됨 또는 스테이징되지 않음)이 표시됩니다.
지역적 차이 확인하기
git diff myfile.txt
또는 다른 도구를 사용할 수 있습니다(일부 변경 사항을 되돌리려는 경우).
git difftool myfile.txt
사용하기git difftool
보다 효율적으로 Meld, DiffMerge 또는 OpenDiff와 같은 즐겨찾는 GUI 도구를 설치하고 사용할 수 있습니다.
참고: 사용할 수도 있습니다..
(파일 이름 대신) 현재 dir 변경 사항을 확인합니다.
각 라인별 변경 사항을 확인하려면 다음을 사용합니다.git blame
어떤 행이 커밋되었는지 표시합니다.
커밋 전에 실제 파일을 보려면 다음과 같이 하십시오(위치).master
지점), 실행:
git show master:path/my_file
파일을 더 현학적인 마지막 커밋과 비교하려는 경우 고려해야 할 또 다른 기법:
git diff master myfile.txt
이 기술의 장점은 다음을 사용하여 끝이 없는 커밋과 비교할 수 있다는 것입니다.
git diff master^ myfile.txt
그리고 그 전의 것은:
git diff master^^ myfile.txt
또한 마스터 분기에 있지 않은 경우 캐럿 '^' 문자에는 '~', 'you branch name'은 'master'로 대체할 수 있습니다.
해보셨습니까-v
(또는)--verbose
) 옵션: 옵션git commit
메시지 편집기에 커밋의 디프를 추가합니다.
이것은 GUI를 보장하는 완벽한 사용 사례라고 생각합니다. - 명령줄에서도 충분히 달성할 수 있다는 것을 완전히 이해하지만요.
개인적으로, 나의 모든 헌신은 깃귀에서 합니다.그렇게 하는 것이 타당하다면 별도의 헝크/라인으로 여러 개의 원자적 커밋을 만들 수 있습니다.
Gut Gui는 잘 포맷된 컬러 인터페이스에서 차이를 볼 수 있으며, 다소 가볍습니다.이것도 확인해보셔야 할 것 같습니다.
경우 하여 macOS 서 git root 디토리여를 합니다.git diff *
가장 GUI를 것에, 내가찾가를장좋방은전법은용외것에커은 GUI는용사하밋를▁the외를 사용하는 것입니다.git difftool -d
이렇게 하면 HEAD를 현재 더티 폴더와 비교하여 디렉토리 비교 모드에서 diff 도구가 열립니다.
git difftool -d HEAD filename.txt
이것은 터미널에서 VI 슬릿 창을 사용한 비교를 보여줍니다.
는 디는로 수있다니로 할 수 .git diff
(수정된 모든 파일의 diff를 보려면 파일 이름으로 표시하거나 없음으로 표시).하지만 만약 당신이 이미 그런 일을 했다면.git add *
▁undo로 해야 합니다.git restore --staged .
언급URL : https://stackoverflow.com/questions/10039747/how-to-view-file-diff-in-git-before-commit
'programing' 카테고리의 다른 글
이스 스위프트UI가 iOS 12.x 및 이전 버전과 역호환됩니까? (0) | 2023.05.20 |
---|---|
프로젝트에 오류가 있습니다. 실행하기 전에 수정하십시오. (0) | 2023.05.20 |
Eclipse 점프를 클로징 브레이스로 이동 (0) | 2023.05.20 |
필터를 통과하는 파이프만 STDERR (0) | 2023.05.20 |
Git 저장소에서 특정 작성자가 변경한 총 줄 수를 계산하는 방법은 무엇입니까? (0) | 2023.05.20 |