ブランチ/タグを作る(svn copy)

ブランチとタグを活用していくことはチームで開発していく上で必要なことです。ここではブランチとタグの作成方法について見ていきます。

ブランチの作成

ブランチを作成するのはとても簡単です。ブランチ作成用のコマンドが用意されているわけではなく、Subversion管理下で行うファイルコピーコマンドであるsvn copyコマンドを使用します。

# svn copy file:///home/svn/repos10/trunk file:///home/svn/repos10/branches/20161220 -m "新しいブランチの作成"

上記コマンドにより、「/home/svn/repos10/branches/20161220」に新しいブランチが作成されました。

ブランチを必要以上に作ると、管理が追いつかなくなりリポジトリが使い物にならなくなってしまう危険も秘めています。ブランチをリポジトリに追加する際は、本当に必要なのかどうか、慎重に検討することが重要です。

ブランチを作成したら、作成したブランチに対して開発者がチェックアウトします。あとは、そのブランチに対して変更を加えていくことになります。

タグの作成

タグの作成も、タグ作成用コマンドが用意されているというわけではなく、ブランチの作成と同じでsvn copyコマンドを使用します。

# svn copy file:///home/svn/repos10/trunk file:///home/svn/repos10/tags/20161220 -m "新しいタグの作成"

タグはある時点のプロジェクトのスナップショットとして使い分け、一度作成したタグに対して変更を加えることはしません。

ブランチとタグの違い

Subversionではタグとブランチの違いはありません。両方ともコピーによって作成される通常のディレクトリにすぎません。

ではなぜ、別の名前がそれぞれ付けられているのでしょうか。

コピーしたディレクトリが「ブランチ」になるか「タグ」になるかは利用者がそのように扱うことに決めるからです。

ブランチとしてコピーしたディレクトリは開発ラインを分岐させるために使用し、タグはある時点のプロジェクトの「スナップショット」として使用します。