2010-03-18 2 views
3

'master'사본과 추적하는 원격 저장소의 사본을 비교하려고합니다. 나는 다음과 같은 명령이 효과가있을 것이라고 생각했다. 그러나 때로는 아무 것도 생성되지 않지만 원격 지점에 많은 변경 사항이 있다는 것을 알고 있습니다.git : 'log master..origin/master'가 예상대로 작동하지 않습니다.

git log master..origin/master 

누구든지이 동작을 설명하고 로컬과 원격 사이의 변경 사항을 확인하기 위해 어떤 명령을 사용해야하는지 말해 줄 수 있습니까?

[또 다른 데이터 조각 : 나는 '자식 로그 마스터 ... 오리지널/마스터'가 아무 것도 생산하지 못하게했습니다. 그럼 나는 당겨. 일부 파일의 작업 복사본이 있기 때문에 당기기가 실패합니다. 이 후, '자식 로그 마스터. 자원/마스터'않습니다 나에게 차이를 보여줍니다. 끌어 오기가 일부 로컬 로그를 업데이트 한 것 같습니다. 만약 그렇다면, 내가 어떻게 풀링을 시도하거나하지 않고 이것을 얻을 수 있습니까?]

답변

3

이것은 origin/master저장소에있는 원격 지점입니다. 그것은 출처의 마스터 브랜치가 마지막으로 "보았던"곳 (가져온 곳과 원격 갱신의 일부인 패치 된 곳)을 나타냅니다.

가져 오면 가져 오기가 수행되고 origin/master이 업데이트됩니다. 그런 다음 호출 병합을 시도하면 실패 할 수도 있고 그렇지 않을 수도 있지만 이는 원격 지점에 영향을주지 않습니다.

git fetch --all 또는 git fetch origin을 사용하여 해당 업데이트를 얻을 수도 있습니다.

1

pullfetchmerge입니다. 가져 오기는 원격 서버에서 로그를 다운로드합니다. 나는 이것이 당신이 여기서 관찰하고있는 것이라고 생각합니다. 당신이 (해당 지역의 repo에서 기원의 로컬 참조) 기원의 무언가를 가져 오기 한 경우

http://www.kernel.org/pub/software/scm/git/docs/git-pull.html

1

그것은 당신에게 약간의 차이 만 표시됩니다.

당신이 후 차이를 볼 이유

git pull 실패

  • 먼저
  • 다음

을 병합하려고 시도 (실패) 가져 오는, 그러나 그것은을 위해 충분하다 git log은 로컬 repo (fetch 부분 이후)에 있기 때문에 필요한 정보를 추출합니다.

관련 문제