2016-05-09 6 views
0

あなたが見ることができます:Gitはあなたが引き出す通常のリポジトリをどのように検出しますか? <a href="https://www.kernel.org/pub/software/scm/git/docs/git-config.html" rel="nofollow">Git-config</a>で

シンプル - 集中型のワークフローでは、上流分岐の名前は地元のものから 異なる場合プッシュすることを拒否するために追加 安全と上流のように働きます。

遠隔異なるリモートにプッシュするとき は通常、から現在のような作業を引きます。

しかし、どのようにしてGitが正常にリポジトリを検出できるのですか?

答えて

1

各ブランチの「通常の」リポジトリは、そのブランチのremote設定で記録されているものです。

と仮定、たとえば、あなたが枝feature3上にあること:

$ git config --get branch.feature3.remote 
bells 

は今、あなたは枝bug7をチェックアウトする代わりに、そのリモートをチェックして、feature3の設定と比較:あなたはブランチbug7とプッシュしている場合は

$ git checkout bug7 
[...] 
$ git config --get branch.bug7.remote 
whistles 
$ git config --get branch.feature3.remote 
bells 

、そしてあなたがwhistlesにプッシュしている場合だけgitが 『通常』のリポジトリにプッシュされます。もしあなたがブランチfeature3にいてpushを押すと、bellsにプッシュしている場合にのみgitは "通常の"リポジトリにプッシュします。

関連する問題