2012-11-02 6 views
6

私はGit repos repo1repo2を持っていなければなりません。 master,alphaおよびbetaの3つの枝がrepo1にあります。 repo2クローンrepo1Gitはどこにリモートトラッキングブランチを格納しますか

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を象徴的な参考文献です。しかし、それが存在しないrefを指摘するのはなぜですか?ところで、repo2alphabetaの情報をどこに保存しますか? (それはgit branch -aに表示されているためrepo2alphabetaを知っている。)

+0

実行しているバージョンはどれですか? 'init'や' fetch'や 'clone'だけでした。私は、デフォルトでフェッチする必要のある設定が用意されているので尋ねます。 –

+0

これはすべて同じマシン上にありますか?実際のセカンドコピーではなく、シンボリックリンクを使用してインストールできますか? –

+0

@PhilipOakley彼らは同じマシンにいます。そしてその答えが以下に指摘されています。私はpacked-refsの問題を忘れていました... – Cyker

答えて

6

refはおそらく.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:質問の「トラッキング」という単語がリクエストの中で最も具体的な部分であるように見えるので、トラッキングメタデータに焦点を当てました。 –

+0

これは私の問題を解決しました:visual studio 2013現在のブランチには上流ブランチが設定されていません – JohnWrensby

関連する問題