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 を参照してください。 |