分岐は非常に異なったSubversionのほぼすべての他のバージョン管理システムに比べて動作します。 Subversionはブランチとタグをディレクトリとしてモデル化します。これは、マージしようとすると大きな問題を引き起こします。つまり、Subversionのブランチングやタグ付けは標準化されておらず、ブランチをレイアウトする方法や作業ディレクトリを管理する方法についてはさまざまな考え方があります。
Gitは、コードの状態に関するビューの種類として分岐します。 作業ディレクトリで一度に1つのブランチがチェックアウトされるのは、です。 Gitの標準は、単一リポジトリの作業ディレクトリ(リポジトリ全体のクローン)を持ち、git checkout
というブランチ間を切り替えることです。
Gitのブランチは、Subversionよりはるかに高速で簡単です。したがって、長生きのブランチは一般的にはお勧めしません。通常は、開発のためのブランチ(通常はmaster
)を用意して、短命のブランチを作成してマージします。 master
で作業するのではなく、典型的には機能ブランチで開発し、マスターとのみマージします。
There are a great number of Git workflows out there。 SVNユーザーは、概念的に集中モデルに近いものを選び、より快適になったらそこから作業したいと思うかもしれません。