最近のバージョンは、ちょうどやってあなたを理解するのに十分なDWIM( "!私は何を意味するか")のロジックを持っています。 branch1
と呼ばれるローカルブランチが存在しない、とbranch1
で終わる一つだけのリモート追跡ブランチがあります場合には動作します - その場合には、それは長いと同等です:
git checkout --track -b branch1 origin/branch1
...あらゆる状況に動くはずです。
私は、あなたの後の質問のいくつかに答えることができなかったことを認識しています。 gitはorigin
リポジトリからのブランチの状態を、いわゆる "リモートトラッキングブランチ"に保存します - origin/master
、origin/branch1
、origin/branch2
などのようなものです。これらをすべてorigin
から更新したい場合は、
git fetch origin
あなたのリモート追跡の枝をすべて表示するには、使用することができます:
git branch -r
完全なコマンドの意味を私は上に引用:
git checkout --track -b branch1 origin/branch1
...です:
- 作成し、新しいブランチに切り替えるには(
checkout -b branch1
ビット)branch1
と呼ば
- は
origin/branch1
でそれを開始する(すなわち、 origin
からbranch1
の最新のキャッシュされた状態)でのベースにそれを
- と開始点はリモート追跡ブランチである場合には、実際に暗黙のですが、あなたのgitの設定(
--track
ビットでbranch1
の「上流」であるとしてorigin/branch1
をマーク)