2014-07-15 2 views
3

복제하지 않고 원격 저장소에서 마지막 커밋의 해시를 가져 오려고합니다. 이것을 할 수있는 방법이 있습니까? 몇 가지 방법을 찾았지만 모두 작동하려면 먼저 repo를 복제 한 다음 명령을 실행하여 마지막 커밋 해시를 가져와야합니다.복제하지 않고 원격 저장소에서 마지막 커밋 해시 가져 오기

복제하지 않고 원격 자식에서 마지막 커밋 해시를 얻을 수있는 방법이 있습니까?

참고)

1 지역의 repo 초기화 :

답변

10
$ git ls-remote https://github.com/gturri/dokuJClient.git 
2fb540fc8c7e9116791638393370a2fa0f079737 HEAD 
2fb540fc8c7e9116791638393370a2fa0f079737 refs/heads/master 

이 명령은 모든 디렉토리에서 실행할 수 있습니다. remote` dooes이 작동하지

git ls-remote https://github.com/gturri/dokuJClient.git | grep HEAD | awk '{ print $1}' 
+0

정말 고마워요. 이것이 제가 찾고 있던 것입니다. 하지만 명령을 실행하면 "Permission denied (publickey)"라고 표시됩니다. 왜 그런 일이 일어나는거야? 이 작업을 수행하기 전에 repo에 ssh 키를 추가해야합니까? 여러 사람이 사용할 스크립트에서이 코드를 사용해야합니다. – user3678812

+0

필자의 예에서 공개 URL을 사용하기 위해 내 대답을 편집했습니다. 이제 당신은 그들을 실행할 수 있어야합니다. 스크립트를 배포하려면 각 잠재 사용자가 사용하는 URL에 대한 읽기 권한을 가지고 있어야합니다. – gturri

+0

고맙습니다. @gturri ... :) 작동했습니다. – user3678812

-1

한 가지 방법은 다음을 것 그것으로 원격 추가) git init

2 : git remote add myRemote "https://myremoterepo"

3) 가져 오기 마지막 커밋에 대한 기록을 확인하고 마지막 커밋의 기록을 확인하십시오. git fetch remote

github의 repo 페이지 (태그에서 추측)와 커밋 탭을 확인할 수도 있습니다. 최신 커밋과 그 커맨드를 보여줍니다.

+0

'자식을 가져, 당신은 자식'로 변경하는 경우'를 가져 오기 : 당신이 마지막 SHA1을 원하는 경우에

, 예를 들어, 스크립트에서 사용하기 위해, 당신은 할 수 실제로 모든 파일을 로컬 시스템으로 전송합니다. – cbaldan

관련 문제