From: "Stephen J. Turnbull" <stephen@xemacs.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: lekktu@gmail.com, emacs-devel@gnu.org
Subject: Re: Workflow to accumulate individual changes?
Date: Sun, 03 Jan 2010 00:30:44 +0900 [thread overview]
Message-ID: <87oclcmsm3.fsf@uwakimon.sk.tsukuba.ac.jp> (raw)
In-Reply-To: <83skaoeutl.fsf@gnu.org>
Eli Zaretskii writes:
> > From: "Stephen J. Turnbull" <stephen@xemacs.org>
> > Date: Sat, 02 Jan 2010 12:46:30 +0900
> > Cc: Emacs developers <emacs-devel@gnu.org>
Urk, I'd been working in Mercurial and mixed semantics. (I really,
really hate the way all the DVCSes insist on using each others'
command names and features but with different semantics attached to
the same name.) I think Óscar got it right, though. After testing,
this should be revised as below
> > bzr branch trunk build-test
A lightweight checkout is often recommended here instead of branch:
bzr checkout --lightweight trunk build-test
It's more efficient.
> > cd build-test
> > make bootstrap
> > make test # if you like, but should be OK :-)
> > for i = 1 2 3; do
> > cd ..
> > bzr branch trunk fix$i
> > cd fix$i
> > # hack
> > bzr commit -m "fix$i"
> > cd ../build-test
Oops, this is where I went WRONG:
> > bzr checkout ../fix$i
RIGHT:
bzr switch ../fix$i
> > make # Look Ma, no 'bootstrap'!
> > make test
> > done
>
> What is the semantics of "bzr checkout ../fix$i" in this case? What
> does it do, exactly?
(Checkout in fact will error here, or perhaps produce a fix$i subtree.
Not what you want.)
"bzr switch fix$i" says
Purpose: Set the branch of a checkout and update.
Usage: bzr switch TO_LOCATION
Options:
--force Switch even if local commits will be lost.
-v, --verbose Display more information.
-q, --quiet Only display errors and warnings.
--usage Show usage message and options.
-b, --create-branch Create the target branch from this one
before switching to it.
-h, --help Show help message.
Description:
For lightweight checkouts, this changes the branch being
referenced. For heavyweight checkouts, this checks that there
are no local commits versus the current bound branch, then it
makes the local branch a mirror of the new location and binds to
it.
# In informal terms, the above says "this workspace now refers to the
# new branch for VCS information."
In both cases, the working tree is updated and uncommitted
changes are merged. The user can commit or revert these as they
desire.
# The update happens automatically and immediately upon "bzr switch".
# In the workflow described above, the "uncommitted changes" are the
# build products generated by "make bootstrap", "make", and "make
# test". In this workflow, no commits should ever happen in this
# tree; it is purely for the convenience of testing since you will
# have a usable bootstrapped tree. (Of course if the changes from
# branch "fix1" to branch "fix2" would have broken the build and need
# a new "make bootstrap" under CVS, you'll need that here, too.)
Pending merges need to be committed or reverted before using
switch.
# The workflow described above should have no pending merges in this
# tree. The only VCS operation you do here after initialization is
# "bzr switch", which is sort of like "cvs update -r" for this workflow.
The path to the branch to switch to can be specified relative to
the parent directory of the current branch. For example, if you
are currently in a checkout of /path/to/branch, specifying
'newbranch' will find a branch at /path/to/newbranch.
# Don't you just love DWIM?
Bound branches use the nickname of its master branch unless it
is set locally, in which case switching will update the the
local nickname to be that of the master.
# I don't know what the above means, exactly; I don't use nicknames.
> Bazaar docs are not very clear on that, to say the least:
>
> Purpose: Create a new checkout of an existing branch.
>
> But fix$i is already an existing branch, and one with local changes,
> so this ``create'' seems not quite the right word here.
My bad, I did warn that my syntax might be wrong.
> (Btw, note the tricky convention regarding slashes, not for the faint
> of heart IMO.)
Heh. Emacsen users should be used to such things, though.
next prev parent reply other threads:[~2010-01-02 15:30 UTC|newest]
Thread overview: 97+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-30 21:34 Workflow to accumulate individual changes? Juanma Barranquero
2009-12-30 21:37 ` Juanma Barranquero
2009-12-30 21:46 ` Óscar Fuentes
2009-12-30 23:57 ` Juanma Barranquero
2009-12-31 0:21 ` Óscar Fuentes
2009-12-31 0:27 ` Juanma Barranquero
2009-12-31 1:04 ` Óscar Fuentes
2009-12-31 1:33 ` Juanma Barranquero
2009-12-31 1:48 ` Óscar Fuentes
2009-12-31 2:22 ` Juanma Barranquero
2009-12-31 4:21 ` Eli Zaretskii
2009-12-31 4:36 ` Juanma Barranquero
2009-12-31 5:12 ` Miles Bader
2009-12-31 10:15 ` Eli Zaretskii
2009-12-31 10:44 ` Eli Zaretskii
2009-12-31 12:37 ` Juanma Barranquero
2009-12-31 19:44 ` Karl Fogel
2009-12-31 20:16 ` Eli Zaretskii
2009-12-31 20:41 ` Juanma Barranquero
2010-01-01 2:54 ` Richard Stallman
2010-01-01 12:35 ` Stephen J. Turnbull
2010-01-01 13:49 ` Stephen J. Turnbull
2009-12-31 5:06 ` Óscar Fuentes
2009-12-31 10:26 ` Eli Zaretskii
2009-12-31 12:28 ` Juanma Barranquero
2009-12-31 18:27 ` Eli Zaretskii
2009-12-31 18:59 ` Óscar Fuentes
2009-12-31 20:39 ` Juanma Barranquero
2010-01-01 13:53 ` Stephen J. Turnbull
2010-01-01 14:38 ` Eli Zaretskii
2009-12-30 22:54 ` Giorgos Keramidas
2009-12-31 0:11 ` Juanma Barranquero
2009-12-31 9:21 ` Andreas Schwab
2009-12-31 10:11 ` Eli Zaretskii
2009-12-31 11:44 ` Andreas Schwab
2009-12-31 12:23 ` Eli Zaretskii
2009-12-31 12:38 ` Juanma Barranquero
2009-12-31 13:25 ` Eli Zaretskii
2009-12-31 13:37 ` Juanma Barranquero
2009-12-31 14:13 ` Eli Zaretskii
2009-12-31 13:43 ` Giorgos Keramidas
2009-12-31 13:53 ` Juanma Barranquero
2009-12-31 14:07 ` Alfred M. Szmidt
2009-12-31 14:16 ` Juanma Barranquero
2010-01-01 15:38 ` Alfred M. Szmidt
2010-01-01 17:53 ` David Kastrup
2010-01-01 2:55 ` Richard Stallman
2010-01-01 4:03 ` Óscar Fuentes
2010-01-01 8:41 ` Eli Zaretskii
2010-01-01 10:04 ` Óscar Fuentes
2010-01-02 15:44 ` Richard Stallman
2010-01-01 12:19 ` Andreas Schwab
2010-01-01 14:33 ` Eli Zaretskii
2010-01-01 14:48 ` Andreas Schwab
2010-01-01 19:18 ` Karl Fogel
2010-01-01 19:56 ` Eli Zaretskii
2010-01-01 20:09 ` Chong Yidong
2010-01-01 21:34 ` Eli Zaretskii
2010-01-01 20:13 ` Karl Fogel
2010-01-01 21:35 ` Eli Zaretskii
2010-01-01 21:25 ` Óscar Fuentes
2010-01-01 21:34 ` Eli Zaretskii
2010-01-01 22:58 ` Andreas Schwab
2010-01-01 20:07 ` Teemu Likonen
2010-01-01 20:12 ` Karl Fogel
2010-01-01 21:08 ` Teemu Likonen
2010-01-02 5:00 ` Stephen J. Turnbull
2010-01-02 5:12 ` Karl Fogel
2010-01-02 5:24 ` Miles Bader
2010-01-02 11:43 ` Juanma Barranquero
2010-01-02 12:09 ` Miles Bader
2010-01-02 19:22 ` Karl Fogel
2010-01-05 8:50 ` Stephen J. Turnbull
2010-01-02 4:37 ` Stephen J. Turnbull
2010-01-01 14:59 ` Stephen J. Turnbull
2010-01-01 15:30 ` Eli Zaretskii
2010-01-01 15:38 ` Alfred M. Szmidt
2009-12-31 14:08 ` David Kastrup
2009-12-31 19:47 ` Karl Fogel
2009-12-31 20:14 ` Chong Yidong
2009-12-31 20:36 ` Óscar Fuentes
2009-12-31 20:44 ` Juanma Barranquero
2009-12-31 14:12 ` Eli Zaretskii
2009-12-31 19:08 ` Stefan Monnier
2009-12-31 12:20 ` Juanma Barranquero
2010-01-01 12:33 ` Stephen J. Turnbull
2010-01-02 1:56 ` Juanma Barranquero
2010-01-02 2:28 ` Óscar Fuentes
2010-01-02 2:50 ` Juanma Barranquero
2010-01-02 9:11 ` Eli Zaretskii
2010-01-02 13:20 ` Juanma Barranquero
2010-01-02 13:17 ` Juanma Barranquero
2010-01-02 3:46 ` Stephen J. Turnbull
2010-01-02 9:10 ` Eli Zaretskii
2010-01-02 15:30 ` Stephen J. Turnbull [this message]
2010-01-02 17:05 ` Eli Zaretskii
2010-01-02 13:39 ` Juanma Barranquero
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87oclcmsm3.fsf@uwakimon.sk.tsukuba.ac.jp \
--to=stephen@xemacs.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=lekktu@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.