7
bzr-svnによって集中型のSubversionリポジトリをまだ利用しているプロジェクトで\
8
BazaarをVCSクライアントとして使うことができます。
9
Subversionリポジトリへのアクセスは大部分は透明、\
10
すなわちネイティブのBazaarブランチで ``bzr`` を使用するようにSubversion\
11
リポジトリで大部分の ``bzr`` コマンドを直接利用できます。
13
多くのbzr-svnユーザーは集中型のSubversionトランクのローカルミラーを作成し、\
14
機能ブランチに取り組み、準備ができたときに変更をすべててSubversionに戻します。
15
これによって既存のチーム規模のプロセスとSubversionの上に現在組み込まれている\
16
ツール統合フックを妨げずに分散型VCSツールの多くの利点を得られます。
17
本当に、これはBazaarを採用しようとしているがタイミングもしくは非技術的な\
18
利用からまだ採用していないチームのための共通の暫定ステップです
20
インストールの手引きに関しては、bzr-svnのホームページをご覧ください:
21
http://wiki.bazaar.canonical.com/BzrForeignBranches/Subversion.
27
GNOMEプロジェクトの **beagle** でのシンプルな使い方です。
28
最初に、ブランチの保存用のローカルな共用リポジトリをセットアップして\
31
bzr init-repo --rich-root-pack beagle-repo
33
bzr checkout svn+ssh://svn.gnome.org/svn/beagle/trunk beagle-trunk
36
``init-repo`` に対して ``rich-root-pack`` オプションを使うことが重要です。
37
bzr-svnは追加のメタデータがいくつか必要ですが、Bazaarのデフォルトのリポジトリフォーマットではまだサポートされないからです。
38
(訳注: Bazaar 2.0以降を使っているのであれば、 --rich-root-pack オプションは不要です。)
39
次に、フィーチャブランチを作成してハックします::
41
bzr branch beagle-trunk beagle-feature1
44
bzr commit -m "blah blah blah"
46
bzr commit -m "blah blah blah"
48
機能がクックされたとき、トランクをリフレッシュして変更をマージします::
52
bzr merge ../beagle-feature1
53
bzr commit -m "Complete comment for SVN commit"
55
トランクミラーはチェックアウトなので、それにコミットすれば実際のSubversionトランクにコミットされます。
60
-------------------------
62
大きなプロジェクトに関しては、上記のレシピを調整すれば役立つことがしばしあります。
63
とりわけ、初期のチェックアウトはとても遅い可能性があるので\
64
プロジェクトに関するすべてのSubversionリポジトリをBazaarリポジトリに一旦インポートして、
65
そのネイティブのBazaarリポジトリからブランチを作成します。
66
bzr-svnはリポジトリからリポジトリへの変換を行うために ``svn-import`` コマンドを提供します。
69
bzr svn-import svn+ssh://svn.gnome.org/svn/beagle
71
中央のBazaarミラーを利用するために更新された上記からのレシピです::
73
bzr init-repo --rich-root-pack beagle-repo
75
bzr branch bzr+ssh://bzr.gnome.org/beagle.bzr/trunk beagle-trunk
76
bzr branch beagle-trunk beagle-feature1
79
bzr commit -m "blah blah blah"
81
bzr commit -m "blah blah blah"
84
bzr merge ../beagle-feature1
85
bzr commit -m "Complete comment for SVN commit"
88
この場合、トランクへのコミットをしてもローカルでマージをコミットするだけです。
89
マスターのSubversionトランクにコミットを戻すには、追加コマンド(``bzr push``)が必要です。
91
注: トランクブランチで ``pull`` と ``push`` のコマンドを最初に使う際に
92
これらのコマンドに関連URLを渡す必要があります。
95
このセットアップの最後のピースはSubversionのものと同期される中心のBazaarミラーを\
96
Subversionのリポジトリと同期し続けるためにスクリプトを適切な場所に設置することです。
97
これはcronジョブを追加したり、Subversionフックを利用するなどによって行われます。
103
BazaarとはSubversionは異なる機能を持つ異なるツールなので\
105
bzr-svn 0.5.4 に関するいくつかの例です:
107
* Bazaarはversioned propertiesをサポートしません
109
* Bazaarはファイルのコピーのトラッキングをサポートしません
111
現在の制約の一覧に関しては、bzr-svnのウェブページ、\
112
http://wiki.bazaar.canonical.com/BzrForeignBranches/Subversion を参照してください。