2012-12-18 4 views
138

원격 저장소의 분기 커밋 기록에 액세스하려고합니다. the doc을 보았지만 로컬 git 클라이언트를 사용하여 원격 저장소의 커밋 기록에 액세스하는 방법에 대한 실질적인 정보를 찾을 수 없습니다.원격 저장소의 커밋 기록

답변

47
git remote add origin <remote reference> 
git fetch 
git log origin/master 
+0

여기에 원격 참조 란 무엇입니까? – user1795998

+2

@ user1795998 원격 저장소 Git URL, 예 : 'git : // git.somedomain.tld/some/repo' – gertvdijk

+1

원격에서 어떤 브랜치도 추적하지 않는다면 페치 할 때''을 지정할 필요가 없습니다 (아니면'fetch --all'를 사용하십시오)? – gertvdijk

172
git log remotename/branchname 

은 저장소에 주어진 원격 지사의 로그를 표시 할 수 있지만에만 원격 저장소의 개인 "복사"에 자신의 저장소에서 "인출"이 로그.

저장소의 복제본이 git fetch 일 경우에만 원격 지점의 상태를 업데이트한다는 점에 유의하십시오. 서버에 직접 연결하여 로그를 검사 할 수 없으며 서버의 상태를 git fetch과 함께 다운로드 한 다음 원격 지점의 로그를 로컬에서 확인하십시오.

아마도 또 다른 유용한 명령이 될 수 :

git log HEAD..remote/branch 
당신에게 원격 지사에있는 커밋을 보여줍니다

,하지만 당신의 현재 지점 (HEAD)에서.

+4

"서버에 직접 연결하여 로그를 검사 할 수는 없습니다."즉, 내가 가지고 있었던 문제가 –

+1

입니다. 나는 로컬에서 가져온 변경 사항만을 가져오고 있습니다. – Loenix

+2

'git fetch'를 할 때'--all'을 사용하여 리모트에서 가져올 필요가 있습니다. – ocodo

9

나는 이것이 가능하다고 생각하지 않습니다. 리모컨을 로컬로 복제하고 git fetch을 수행해야 git log을 발행 할 수 있다고 생각합니다.

+1

이미 로컬에 저장소를 복제하고 약간 변경한다고 가정 해보십시오. . 그런 다음 누군가가 원격 저장소에 최선을 다했는지 확인하고 싶습니다. –

+0

이 답변을 "불가능합니다"로 변경하면이 답변이 가장 좋습니다. 원격 자식 클라이언트를 사용하여 원격 저장소의 커밋 기록에 액세스 할 수있는 방법은 없습니다. – qneill

10

로컬 저장소에서만 로그를 볼 수 있지만 설정 한 모든 원격의 가져온 분기가 포함될 수 있습니다. 당신이 REPO를 복제하는 경우

그래서 ...

git clone [email protected]:folder/repo.git 

origin/master로 설정됩니다.

리모컨을 추가 할 수 있습니다 (origin 제외). production을 추가하십시오. 로컬 복제 폴더 내에서 : 우리가 이제까지 production의 로그를 볼 수있는 경우

git remote add production [email protected]:folder/repo.git 

우리가해야 할 것입니다 : 이것은 모든 리모컨에서 가져

git fetch --all 

(기본값은 가져올 것 --all없이 가져 origin)

가져온 후 production 원격의 로그를 볼 수 있으므로 브랜치도 지정해야합니다.

git log production/master 

모든 옵션은 로컬 분기 로그온과 마찬가지로 작동합니다.

git clone --bare [email protected] tmpdir 
cd tmpdir 
git log branch 
7

이 일을 빠른 방법은 --bare 키워드를 사용하여 복제 한 후 로그를 확인하는 것입니다.

(1) ssh를 통해 git을 사용하는 경우 - git 로그인과 암호를 사용하여 원격 서버에 로그인하고 저장소가있는 원격 폴더를 chdir하고 "git log"명령을 실행하십시오 원격 서버의 저장소 내부.

(2) Unix의 표준 로그인 프로토콜을 통해 git을 사용하는 경우 원격 서버에 텔넷으로 연결하고 거기에 git 로그를 작성하십시오.

희망이 도움이됩니다.

1

당신은 쉽게 원격 서버의 로그를 얻을 수 있습니다 :

+4

"원격 서버의 로그를 가져올 수 없으며 로그인하고 로컬 git 클라이언트를 사용하여 로그를 얻어야합니다." – qneill

관련 문제