回答:
git checkout old_branch
git branch new_branch
これにより、「old_branch」と同じ状態の新しいブランチ「new_branch」が作成されます。
このコマンドは、以下と組み合わせることができます。
git checkout -b new_branch old_branch
git checkout -b new_branch
します(既にを使用している場合old_branch
)。
Git 2.15(2017年第4四半期)では、既存のブランチをコピーして新しいブランチを作成するgit branch
ことを " -c/-C
" 学びました " 。
参照してくださいc8b2cecコミットにより(2017年6月18日)をÆvarアインホルトBjarmason( )avar
。 Sahil Dua()によるコミット52d59cc、コミット5463caa(2017年6月18日)を
参照してください。(による合併Junio C浜野- -で3b48045コミット、2017年10月3日)をsahildua2305
gitster
branch
:追加--copy
(-c
と行くには)オプションを--move
(-m
)
--copy
ブランチとそのreflogと構成に機能を追加します。これは、--move
(-m
)オプションと同じ基本的な機構を使用しますが、reflogと構成は移動ではなくコピーされます。これは例えば、例えば新しいバージョンにトピックブランチをコピーするために有用である
work
にwork-2
提出した後work
、すべてのトラッキング情報とブランチに進み、それ以外の構成を維持しながら、リストにトピックを、とは違っ--move
ために周りの他の既に提出枝を維持します参照。
注:ブランチをコピーする場合、現在のブランチのままです。
Junio C Hamanoが説明するように:
たまたま現在のブランチで
B
あるブランチA
をコピーして新しいブランチを作成すると、新しいブランチHEAD
を指すように更新されます。
おそらく、このように作成git branch -c A B
されたのは、「git branch -m A B
」で実装を便乗させたためです。これは通常の期待とは一致しません。
私が青い椅子に座っていて、誰かが来てそれを赤に塗り直した場合、私は現在赤い椅子に座ってしまうことを受け入れます(代わりに、お気に入りの青い椅子がなくなったので、立ってもかまいません) )。しかし、誰かが新しい赤い椅子を作成し、私が座っている青い椅子をモデルにした場合、青い椅子から起動して新しい赤い椅子に座ってしまうことはないと思います。
git branch -c A B
。以下の私の回答を