bzr branch
http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
1 |
brz-svn |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
2 |
======= |
3 |
||
4 |
Overview |
|
5 |
-------- |
|
6 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
7 |
brz-svn lets developers use Breezy as their VCS client on projects |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
8 |
still using a central Subversion repository. Access to Subversion |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
9 |
repositories is largely transparent, i.e. you can use most ``brz`` |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
10 |
commands directly on Subversion repositories exactly the same |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
11 |
as if you were using ``brz`` on native Breezy branches. |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
12 |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
13 |
Many brz-svn users create a local mirror of the central Subversion |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
14 |
trunk, work in local feature branches, and submit their |
15 |
overall change back to Subversion when it is ready |
|
16 |
to go. This lets them gain many of the advantages of distributed |
|
17 |
VCS tools without interrupting existing team-wide processes and |
|
18 |
tool integration hooks currently built on top of Subversion. Indeed, |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
19 |
this is a common interim step for teams looking to adopt Breezy but |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
20 |
who are unable to do so yet for timing or non-technical reasons. |
21 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
22 |
For installation instructions, see the brz-svn home page: |
|
5050.22.1
by John Arbash Meinel
Lots of documentation updates. |
23 |
http://wiki.bazaar.canonical.com/BzrForeignBranches/Subversion. |
|
3423.1.3
by Ian Clatworthy
incorporate feedback from Neil Martinsen-Burrell |
24 |
|
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
25 |
|
26 |
A simple example |
|
27 |
---------------- |
|
28 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
29 |
Here's a simple example of how you can use brz-svn to hack on a |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
30 |
GNOME project like **beagle**. Firstly, setup a local shared repository |
31 |
for storing your branches in and checkout the trunk:: |
|
32 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
33 |
brz init-repo beagle-repo |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
34 |
cd beagle-repo |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
35 |
brz checkout svn+ssh://svn.gnome.org/svn/beagle/trunk beagle-trunk |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
36 |
|
|
4714.1.1
by Jelmer Vernooij
Remove --default-rich-root argument in user-guide - the default format is now rich-root-enabled. |
37 |
Next, create a feature branch and hack away:: |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
38 |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
39 |
brz branch beagle-trunk beagle-feature1 |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
40 |
cd beagle-feature1 |
|
3882.5.2
by Jari Aalto
This patch unifies few examples to use same notation as elsewhere int he |
41 |
(hack, hack, hack) |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
42 |
brz commit -m "blah blah blah" |
|
3882.5.2
by Jari Aalto
This patch unifies few examples to use same notation as elsewhere int he |
43 |
(hack, hack, hack) |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
44 |
brz commit -m "blah blah blah" |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
45 |
|
46 |
When the feature is cooked, refresh your trunk mirror and merge |
|
47 |
your change:: |
|
48 |
||
49 |
cd ../beagle-trunk |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
50 |
brz update |
51 |
brz merge ../beagle-feature1 |
|
52 |
brz commit -m "Complete comment for SVN commit" |
|
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
53 |
|
54 |
As your trunk mirror is a checkout, committing to it implicitly |
|
55 |
commits to the real Subversion trunk. That's it! |
|
56 |
||
57 |
||
58 |
Using a central repository mirror |
|
59 |
--------------------------------- |
|
60 |
||
61 |
For large projects, it often makes sense to tweak the recipe given above. |
|
62 |
In particular, the initial checkout can get quite slow so you may wish |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
63 |
to import the Subversion repository into a Breezy one once and for all |
64 |
for your project, and then branch from that native Breezy repository |
|
65 |
instead. brz-svn provides the ``svn-import`` command for doing this |
|
|
3423.1.2
by Ian Clatworthy
add svn-import example |
66 |
repository-to-repository conversion. Here's an example of how to use it:: |
67 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
68 |
brz svn-import svn+ssh://svn.gnome.org/svn/beagle |
69 |
||
70 |
Here's the recipe from above updated to use a central Breezy mirror:: |
|
71 |
||
72 |
brz init-repo beagle-repo |
|
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
73 |
cd beagle-repo |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
74 |
brz branch bzr+ssh://brz.gnome.org/beagle.brz/trunk beagle-trunk |
75 |
brz branch beagle-trunk beagle-feature1 |
|
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
76 |
cd beagle-feature1 |
|
3882.5.2
by Jari Aalto
This patch unifies few examples to use same notation as elsewhere int he |
77 |
(hack, hack, hack) |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
78 |
brz commit -m "blah blah blah" |
|
3882.5.2
by Jari Aalto
This patch unifies few examples to use same notation as elsewhere int he |
79 |
(hack, hack, hack) |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
80 |
brz commit -m "blah blah blah" |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
81 |
cd ../beagle-trunk |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
82 |
brz pull |
83 |
brz merge ../beagle-feature1 |
|
84 |
brz commit -m "Complete comment for SVN commit" |
|
85 |
brz push |
|
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
86 |
|
87 |
In this case, committing to the trunk only commits the merge locally. |
|
88 |
To commit back to the master Subversion trunk, an additional command |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
89 |
(``brz push``) is required. |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
90 |
|
|
3431.4.4
by Benjamin Rister
Added missing quotes. |
91 |
Note: You'll need to give ``pull`` and ``push`` the relevant URLs |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
92 |
the first time you use those commands in the trunk branch. After that, |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
93 |
brz remembers them. |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
94 |
|
95 |
The final piece of the puzzle in this setup is to put scripts in |
|
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
96 |
place to keep the central Breezy mirror synchronized with the Subversion |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
97 |
one. This can be done by adding a cron job, using a Subversion hook, |
98 |
or whatever makes sense in your environment. |
|
99 |
||
100 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
101 |
Limitations of brz-svn |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
102 |
---------------------- |
103 |
||
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
104 |
Breezy and Subversion are different tools with different capabilities |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
105 |
so there will always be some limited interoperability issues. |
|
6622.1.24
by Jelmer Vernooij
More doc renames. |
106 |
Here are some examples current as of brz-svn 0.5.4: |
107 |
||
108 |
* Breezy doesn't support versioned properties |
|
109 |
||
110 |
* Breezy doesn't support tracking of file copies. |
|
111 |
||
112 |
See the brz-svn web page, |
|
|
5050.22.1
by John Arbash Meinel
Lots of documentation updates. |
113 |
http://wiki.bazaar.canonical.com/BzrForeignBranches/Subversion, |
|
3416.1.1
by Ian Clatworthy
new structure and initial content for closing chapters |
114 |
for the current list of constraints. |