[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Switching to bzr: what Emacs developers should know?
From: |
Óscar Fuentes |
Subject: |
Re: Switching to bzr: what Emacs developers should know? |
Date: |
Sun, 09 Aug 2009 04:24:40 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) |
Bastien <address@hidden> writes:
>> Presumably, you've seen this, yes?:
>> http://www.emacswiki.org/emacs/BzrForEmacsDevs
>
>> First, initialize a repository in which to store all your branches:
>>
>> bzr init-repo --2a emacs/
>
> (I hope we won't need this "--2a" option anytime soon.)
Why?
The 2a format speeds up some operations and will be the default format
for bzr 2.0 (to be released some weeks from now).
>> Create a branch that will just be a mirror of the mainline. You’ll
>> never make any changes to this branch; its job is just to reflect the
>> upstream master:
>>
>> cd emacs/
>> bzr branch http://bzr.savannah.gnu.org/sources/emacs/trunk/ trunk/
>
> Is this "trunk" branch necessary, or just a convenience?
A big convenience.
> Why isn't the default branch enough for the trunk-tasks described
> in this page?
If you work with feature branches, having a local mirror saves a lot of
network traffic when creating the branches and allows branching while
off-line.
>> And after refreshing the mirror, you’ll want to get those changes into
>> your task branch, by merging them:
>>
>> cd SOME-TASKNAME/
>> bzr merge
>> bzr commit -m "Merge from mainline."
>
> Is this merge happening between the local branch and the trunk or the
> local branch and the default branch?
By default, the merge will happen between the branch you are working on
(what you call "local branch") and your mirror branch.
>> If you’re one of the Emacs maintainers, then you can just push it
>> directly to the upstream master:
>>
>> bzr push %%bzr+ssh://bzr.savannah.gnu.org/sources/emacs/trunk/%%
>
> Any chance to reduce this to "bzr push"?
bzr will remember the location you used for push, pull, etc and will use
it as the default for the next same operation.
> IIUC this sequence will do:
>
> ,----
> | cd SOME-TASK/
> | echo "public_branch = http://bzr.savannah.gnu.org/sources/emacs/trunk" >>
> .bzr/branch/config
> | bzr bind http://bzr.savannah.gnu.org/sources/emacs/trunk/
> | cd ..
> `----
>
> Then "bzr push" will push to the public_branch location. Am I right?
Yes, but this is no different from what CVS does: every commit goes
straight away to the central repo.
BTW, I wouldn't recommend the echo trick quoted abobe. If in doubt, use
the --remeber option to store the location.
--
Óscar
- Re: Switching to bzr: what Emacs developers should know?, (continued)
- bzr for Gnus (was: Switching to bzr: what Emacs developers should know?), Ted Zlatanov, 2009/08/11
- bzr for Gnus (was: Switching to bzr: what Emacs developers should know?), Stephen J. Turnbull, 2009/08/12
- Re: bzr for Gnus (was: Switching to bzr: what Emacs developers should know?), Mike Kupfer, 2009/08/12
- Re: bzr for Gnus, Ted Zlatanov, 2009/08/12
- Re: bzr for Gnus, Miles Bader, 2009/08/12
- Re: bzr for Gnus, Stefan Monnier, 2009/08/13
Re: Switching to bzr: what Emacs developers should know?, Bastien, 2009/08/08
Re: Switching to bzr: what Emacs developers should know?, Bastien, 2009/08/08
Re: Switching to bzr: what Emacs developers should know?, CHENG Gao, 2009/08/09
Re: Switching to bzr: what Emacs developers should know?, CHENG Gao, 2009/08/12
Re: Switching to bzr: what Emacs developers should know?, Stefan Monnier, 2009/08/13