まず、私はhow I can update my Bare Repositoryを知っています。現在のリポジトリがbare
で、リモートリポジトリのI fetch
である場合、origin
から取得すると以外のremote (tracking) branches
が作成される理由を知りたいのですが、 origin
、bare_clone
とremote
:私は現在のディレクトリに3つのディレクトリを持ってGitのBareリポジトリの起源からのフェッチは "リモートブランチ"を作成しません
:
私はこの実験を試みました。今:あなたは2つのリモートのブランチを見ることができます$ cd ./origin
$ git init
$ cat > 1
^Z
$ git add 1
$ git commit -m "add 1 in initial commit"
$ cd ../bare_clone
$ git clone --bare ../origin
$ cd ../remote
$ git init
$ cat > 1
^Z
$ git add 1
$ git git commit -m "add 1 in initial commit"
$ git branch test
$ cd ../bare_clone/origin.git/
$ git remote add remote_name ../../remote/
____________________________________________
$ git fetch remote_name
warning: no common commits
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From ../../remote
* [new branch] master -> remote_name/master
* [new branch] test -> remote_name/test
____________________________________________
$ git branch -a
* master
remotes/remote_name/master
remotes/remote_name/test
____________________________________________
$ cd ../../origin/
$ git branch origin_test_branch
____________________________________________
$ cd ../bare_clone/origin.git/
t$ git fetch origin
From path/to/bare_clone/../origin
* branch HEAD -> FETCH_HEAD
____________________________________________
$ git branch -a
* master
remotes/remote_name/master
remotes/remote_name/test
はremote_name
リポジトリの追跡ブランチのために作成されますが、origin
の枝origin_test_branch
を追跡するためのリモートブランチはありません。