Program Tip

git pull 후 코드 변경 사항을 보는 방법은 무엇입니까?

programtip 2020. 11. 13. 23:59
반응형

git pull 후 코드 변경 사항을 보는 방법은 무엇입니까?


을 수행 한 후 코드 변경 사항을 검사하고 싶습니다 git pull. 현재는 어떤 파일이 변경되는지 보여주고 있습니다. 어떤 코드가 변경되었는지 어떻게 확인할 수 있습니까?


git log --name-status -2

마지막 두 커밋에서 변경된 파일의 이름을 보여줍니다.

git log -p -2

변경 사항을 직접 보여줍니다.

당기기 전에

git fetch
git log --name-status origin/master..

파일 이름과 함께 검색하려는 커밋을 보여줍니다.


당기기 전에

@iblue가 a fetchdiff병합하기 전에 변경 사항을 검토 할 수 있습니다 .

$ git fetch
$ git diff master...origin/master

공유 된 상위 및 원본 / 마스터 ( x아래에 표시된 커밋 ) 에 대한 차이를 의미하는 삼중 기간에 유의하십시오 .

SP---o---o [master]
  \
   x---x [origin/master]

당긴 직후

pull 출력의 첫 번째 줄은 다음과 같습니다.

$ git pull
Updating 37b431a..b2615b4
...

그런 다음 간단히 다음을 수행 할 수 있습니다.

$ git diff 37b431a..b2615b4

또는 다른 명령 :

$ git log --name-status 37b431a..b2615b4

나중에

뽑은 지 오래되었고 마지막 뽑기에서 가져온 변경 사항을 알고 싶다면 다음을 사용하여 조회 할 수 있습니다.

$ git reflog | grep -A1 pull | head -2

풀 후의 해시와 풀 전의 해시를 보여줍니다.

b2615b4 HEAD@{0}: pull : Fast-forward
37b431a HEAD@{1}: checkout: moving from v6.1 to master

그런 다음 다음 두 해시로 동일한 작업을 수행 할 수 있습니다.

git diff 37b431a..b2615b4

git pullgit fetch의 바로 가기 일 뿐이 므로 원본에서 분기를 가져온 다음 병합하기 전에 차이점을 표시하도록 git merge실행할 수 있습니다 git fetch. 이렇게 :

git fetch                      # Load changes from remote server
git diff master origin/master  # Show differences
git merge origin/master        # Merge remote changes with local changes

master가 아닌 다른 분기에서 실행하는 경우 물론 위 명령에서 분기 이름을 변경해야합니다.


이것으로 밀고 당기면서 어떤 변화가 있는지 확인할 수 있습니다.

git log --stat

가져온 내용을 바로 이전 커밋의 소스와 비교할 수 있습니다.

git diff branch_name@{1}

예 :

git diff master@{1}

n 커밋 뒤에있는 소스와 비교하기 위해,

git diff branch_name@{n}

참고URL : https://stackoverflow.com/questions/11284350/how-to-see-code-changes-after-git-pull

반응형