풀하기 전에 로컬과 github의 차이점을 확인하는 방법
이 질문에 이미 답변이 있습니다.
pull을 사용하기 전에 로컬과 github 마스터 사이에 차이점이 있는지 확인하고 싶습니다.
내가 어떻게 해?
git pull
실행에 정말 동일합니다 git fetch
다음과 git merge
. 은 git fetch
일반적으로 이러한 것들처럼 그 - 당신의 소위 "원격 추적 브랜치는"업데이트 origin/master
, github/experiment
등 당신이 볼 수 있음 git branch -r
. 이것은 당신이 할 때 git fetch
(또는 성공 했을 때) 업데이트되는 원격 저장소의 분기 상태 캐시와 같습니다 git push
.
따라서 origin
GitHub 저장소를 참조 하는 원격 호출이 있다고 가정하면 다음 과 같이 할 수 있습니다.
git fetch origin
... 그리고 다음을 수행하십시오.
git diff master origin/master
... master
와 GitHub 의 차이점을 확인하기 위해 . 이러한 차이점이 만족 스러우면 현재 브랜치 git merge origin/master
라고 가정 하고으로 병합 할 수 있습니다 master
.
개인적으로, 나는 일을 생각 git fetch
하고 git merge
분리하는 것은 일반적으로 좋은 아이디어 .
git diff
출력 되는 세부 정보에 관심이 없다면 git cherry
원격 추적 분기가 로컬 분기보다 앞서있는 커밋 목록을 출력하는 실행 만하면 됩니다.
예를 들면 :
git fetch origin
git cherry master origin/master
다음과 같이 출력됩니다.
+ 2642039b1a4c4d4345a0d02f79ccc3690e19d9b1
+ a4870f9fbde61d2d657e97b72b61f46d1fd265a9
내 로컬 브랜치에 병합되지 않은 내 원격 추적 브랜치에 두 개의 커밋이 있음을 나타냅니다.
이것은 또한 다른 방식으로 작동합니다.
git cherry origin/master master
아직 원격 저장소에 푸시하지 않은 로컬 커밋 목록이 표시됩니다.
이 작업을 수행하는 또 다른 유용한 명령 (git fetch 후)은 다음과 같습니다.
git log origin/master ^master
이것은 origin / master에 있지만 master에는없는 커밋을 보여줍니다. git pull을 할 때 반대로 수행하여 어떤 커밋이 원격으로 제출되는지 확인할 수도 있습니다.
'programing tip' 카테고리의 다른 글
GoogleTest에서 특정 테스트 케이스를 실행하는 방법 (0) | 2020.08.11 |
---|---|
Lisp에서 '(또는 따옴표)를 언제 사용합니까? (0) | 2020.08.11 |
자바 스크립트 i ++ 대 ++ i (0) | 2020.08.11 |
PHP에서 추상 클래스는 무엇입니까? (0) | 2020.08.11 |
NSLayoutConstraint가 ViewController를 충돌시킵니다. (0) | 2020.08.11 |