code

들어오는 커밋을 보려면 어떻게 해야 합니까?

starcafe 2023. 7. 7. 19:17
반응형

들어오는 커밋을 보려면 어떻게 해야 합니까?

중복 가능성:
Git를 사용하여 로컬과 원격 간에 수정된 파일을 찾는 방법

들어오는 커밋을 보려면 어떻게 해야 합니까?아니면 더 좋은 것은, 내가 방금 한 것을 봐요.git fetch/git pull에드?

편집: 질문을 명확히 하기 위해: 누군가가 수정 사항을 얻으려면 저장소에서 꺼내야 한다고 말합니다.제 목표는 그들의 변화를 받아들이기 전에 그들의 변화를 보는 것입니다. git pull자동으로 병합됩니다. 제가 원하는 것이 아닙니다. git fetch병합하지 않고 잡을 수는 있지만, 제가 방금 끌어들인 것을 정확히 어떻게 봐야 할지 모르겠습니다.원래의 문구를 사용하는 이유는 보통 명령어가 있는 머큐리얼을 사용하기 때문입니다.hg incoming <repo name here>—git에 아날로그가 없는 것처럼 보이는 명령입니다.

incoming끌어오는 저장소가 여러 개이고 각 저장소에는 여러 개의 분기가 있기 때문에 직접적인 매핑은 아닙니다.

hg의 수신 명령에 해당하는 명령이 있다면 다음과 같습니다.

git fetch && git log ..origin/master

즉, "업스트림에서 모든 항목을 가져온 다음 현재 분기를 업스트림 마스터 분기와 비교합니다."

마찬가지로 발신은 다음과 같습니다.

git fetch && git log origin/master..

실제로는 여러 로컬 지점에서 원격 지점을 추적하고 추적하는 것이 쉽고 함께 유지하는 데 문제가 없기 때문에 수동으로 입력합니다(그 중 하나에 대한 별칭을 생성했음에도 불구하고).

또한 일부 커밋 범위에서 수행된 변경사항에 대한 좋은 개요를 제공하는 항목에 관심이 있을 수 있습니다.

끌어낼 내용을 검토하려면 다음을 수행합니다.git fetch먼저, 원격 저장소에 대한 로컬 추적 분기만 업데이트한 다음 풀하려는 새 커밋을 표시하는 명령을 사용합니다.예:

git whatchanged ..origin

이것은 "원산"을 통해 "지금 내가 어디에 있든, 어디에 있든 공통된 조상"과 "원산" 사이의 커밋을 보여주는 약어입니다.

두 리포지토리 간의 차이를 조사할 수 있습니다.로컬 분기 'master'와 원격 추적 분기 'origin/master'가 있고 다른 사용자가 코드를 커밋한다고 가정하면 두 분기의 차이점에 대한 다른 통계를 얻을 수 있습니다.

git diff --summary master origin/master

git diff --stat master origin/master

git diff --numstat master origin/master

git diff --dirstat master origin/master

git diff --shortstat master origin/master

git diff --name-only master origin/master

git diff master origin/master

누군가가 당기라고 하면, 그들은 당신에게 repo URL과 분기를 줄 것입니다(기본값은master).

저는 그냥.

git fetch URL branch

다음에 하나가 나옵니다(선호도가 낮은 순서대로)

# note 3 dots in next 3 commands
gitk HEAD...FETCH_HEAD
    # shows all commits on both sides since the "fork" point
gitk --cherry-pick HEAD...FETCH_HEAD
    # as above but skips identical patches so you really see the differences
git log --graph --boundary --left-right --cherry-pick --decorate HEAD...FETCH_HEAD
    # I have a nice alias for this; it's the text mode eqvt of the above

"도 사용합니다.tig때때로, 하지만 이 특정한 사용 사례(양쪽 보기)는 잘 제공되지 않습니다.tig.

하지만, 만약 당신이 그것을 두 개의 점으로 줄이면(이것은 당신의 실제 질문과 더 밀접하게 일치할 수 있지만, 나는 여전히 3개의 점 버전을 선호한다) 당신은 할 수 있습니다.

tig HEAD..FETCH_HEAD

다음은 편의를 위한 별칭입니다.

incoming = !sh -c 'git fetch && git log --graph --boundary --left-right --cherry-pick --decorate HEAD..FETCH_HEAD'
outgoing = !sh -c 'git fetch && git log --graph --boundary --left-right --cherry-pick --decorate FETCH_HEAD..HEAD'

"수신 커밋" 사용자가 로컬에서 커밋하고 푸시하는 것은 없습니다.gitx 또는 gitk(git와 함께 제공됨)를 열고 저장소가 어떻게 생겼는지 확인합니다.그것이 당신에게 명확한 전망을 줄 것 같습니다.

사용:gitk --all보기 위해.

언급URL : https://stackoverflow.com/questions/1331385/how-can-i-see-incoming-commits-in-git

반응형