2012-11-02 3 views
6

나는 Git Repos repo1repo2에 접속해야합니다. master, alphabeta의 세 가지가 repo1에 있습니다. repo2 클론 repo1.Git은 원격 추적 지점을 어디에 저장합니까

repo2, 나는 원격 git branch -a와 지점을 추적 볼 수 있습니다

remotes/origin/HEAD -> origin/master 
remotes/origin/master 
remotes/origin/alpha 
remotes/origin/beta 

그러나 폴더를 repo2.git/refs/remotes/origin/는 내용이 단일 파일 HEAD있다 : 그래서

ref: refs/remotes/origin/master 

HEAD을 상징적 인 심판이다. 하지만 존재하지 않는 심판을 지적하는 이유는 무엇입니까? 어디로 repo2alphabeta의 정보를 저장합니까? (이 git branch -a에 표시하기 때문에 repo2alphabeta 알고있다.)

+0

실행중인 버전은 무엇입니까? 'init'과'fetch' 또는 그냥'clone'을 했습니까? 기본적으로 가져와야하는 설정을 사용할 수 있기 때문에 묻습니다. –

+0

이것은 모두 동일한 컴퓨터에 있습니까? 설치시 진정한 두 번째 복사본이 아닌 심볼릭 링크를 사용할 수 있습니까? –

+0

@PhilipOakley 그들은 같은 기계에 있습니다. 그리고 그 대답은 아래에 지적되어 있습니다. 나는 packed-refs 문제를 잊었다 ... – Cyker

답변

6

refs는 아마도 .git/packed-refs에 "포장 된"것입니다.

+2

'git help pack-refs'는 모든 것을 명확하게합니다. 감사! – Cyker

3

정보는 .git/config에 있고 추가하거나 리모컨을 수정할 때 git remote 같은 도구로 업데이트됩니다. git-config에 대한 매뉴얼 페이지가 있습니다. "지점 추적"을 검색하면 해당 지점의 세부 정보가 표시됩니다.

+0

이것은 거짓이다. 원격 추적 분기는'.git/config'에 저장되지 않습니다. 모든 브랜치는'.git/refs /'또는'.git/packed-refs'에 저장됩니다. 로컬 브랜치와 fetch 및 push refspec에 대한 추적 메타 데이터 만이'.git/config'에 저장됩니다. –

+0

@CharlesBailey : 질문에서 "tracking"이라는 단어가 요청의 가장 구체적인 부분 인 것처럼 보였으므로 추적 메타 데이터에 중점을 둡니다. –

+0

수정 된 내 문제점 : visual studio 2013 현재 분기에 업스트림 브랜치가 구성되지 않았습니다. – JohnWrensby

관련 문제