~bzr-pqm/bzr/bzr.dev

4634.99.1 by Naoki INADA
import doc-ja rev90
1
bzr-svn
2
=======
3
4
概要
5
-----
6
7
bzr-svnによって集中型のSubversionリポジトリをまだ利用しているプロジェクトで\
8
BazaarをVCSクライアントとして使うことができます。
9
Subversionリポジトリへのアクセスは大部分は透明、\
10
すなわちネイティブのBazaarブランチで ``bzr`` を使用するようにSubversion\
11
リポジトリで大部分の ``bzr`` コマンドを直接利用できます。
12
13
多くのbzr-svnユーザーは集中型のSubversionトランクのローカルミラーを作成し、\
14
機能ブランチに取り組み、準備ができたときに変更をすべててSubversionに戻します。
15
これによって既存のチーム規模のプロセスとSubversionの上に現在組み込まれている\
16
ツール統合フックを妨げずに分散型VCSツールの多くの利点を得られます。
17
本当に、これはBazaarを採用しようとしているがタイミングもしくは非技術的な\
18
利用からまだ採用していないチームのための共通の暫定ステップです
19
20
インストールの手引きに関しては、bzr-svnのホームページをご覧ください:
5875.1.1 by INADA Naoki
Update Japanese docs.
21
http://wiki.bazaar.canonical.com/BzrForeignBranches/Subversion
4634.99.1 by Naoki INADA
import doc-ja rev90
22
23
24
シンプルな例
25
-------------
26
27
GNOMEプロジェクトの **beagle** でのシンプルな使い方です。
28
最初に、ブランチの保存用のローカルな共用リポジトリをセットアップして\
29
トランクをチェックアウトします::
30
5875.1.1 by INADA Naoki
Update Japanese docs.
31
  bzr init-repo beagle-repo
4634.99.1 by Naoki INADA
import doc-ja rev90
32
  cd beagle-repo
33
  bzr checkout svn+ssh://svn.gnome.org/svn/beagle/trunk beagle-trunk
34
35
次に、フィーチャブランチを作成してハックします::
36
37
  bzr branch beagle-trunk beagle-feature1
38
  cd beagle-feature1
39
  (hack, hack, hack)
40
  bzr commit -m "blah blah blah"
41
  (hack, hack, hack)
42
  bzr commit -m "blah blah blah"
43
44
機能がクックされたとき、トランクをリフレッシュして変更をマージします::
45
46
  cd ../beagle-trunk
47
  bzr update
48
  bzr merge ../beagle-feature1
49
  bzr commit -m "Complete comment for SVN commit"
50
51
トランクミラーはチェックアウトなので、それにコミットすれば実際のSubversionトランクにコミットされます。
52
以上です!
53
54
55
集中型のミラーを利用する
56
-------------------------
57
58
大きなプロジェクトに関しては、上記のレシピを調整すれば役立つことがしばしあります。
59
とりわけ、初期のチェックアウトはとても遅い可能性があるので\
60
プロジェクトに関するすべてのSubversionリポジトリをBazaarリポジトリに一旦インポートして、
61
そのネイティブのBazaarリポジトリからブランチを作成します。
62
bzr-svnはリポジトリからリポジトリへの変換を行うために ``svn-import`` コマンドを提供します。
63
使い方の例です::
64
65
  bzr svn-import svn+ssh://svn.gnome.org/svn/beagle
66
67
中央のBazaarミラーを利用するために更新された上記からのレシピです::
68
5875.1.1 by INADA Naoki
Update Japanese docs.
69
  bzr init-repo beagle-repo
4634.99.1 by Naoki INADA
import doc-ja rev90
70
  cd beagle-repo
71
  bzr branch bzr+ssh://bzr.gnome.org/beagle.bzr/trunk beagle-trunk
72
  bzr branch beagle-trunk beagle-feature1
73
  cd beagle-feature1
74
  (hack, hack, hack)
75
  bzr commit -m "blah blah blah"
76
  (hack, hack, hack)
77
  bzr commit -m "blah blah blah"
78
  cd ../beagle-trunk
79
  bzr pull
80
  bzr merge ../beagle-feature1
81
  bzr commit -m "Complete comment for SVN commit"
82
  bzr push
83
84
この場合、トランクへのコミットをしてもローカルでマージをコミットするだけです。
85
マスターのSubversionトランクにコミットを戻すには、追加コマンド(``bzr push``)が必要です。
86
87
注:  トランクブランチで ``pull`` と ``push`` のコマンドを最初に使う際に
88
これらのコマンドに関連URLを渡す必要があります。
89
その後で、bzrはそれらを記憶します。
90
91
このセットアップの最後のピースはSubversionのものと同期される中心のBazaarミラーを\
92
Subversionのリポジトリと同期し続けるためにスクリプトを適切な場所に設置することです。
93
これはcronジョブを追加したり、Subversionフックを利用するなどによって行われます。
94
95
96
bzr-svnの制限
97
--------------
98
99
BazaarとはSubversionは異なる機能を持つ異なるツールなので\
100
何らかの相互運用問題が常に存在します。
101
bzr-svn 0.5.4 に関するいくつかの例です:
102
103
 * Bazaarはversioned propertiesをサポートしません
104
105
 * Bazaarはファイルのコピーのトラッキングをサポートしません
106
5875.1.1 by INADA Naoki
Update Japanese docs.
107
現在の制約の一覧に関しては、bzr-svnのウェブページ、
5050.22.1 by John Arbash Meinel
Lots of documentation updates.
108
http://wiki.bazaar.canonical.com/BzrForeignBranches/Subversion を参照してください。