From: "Stephen J. Turnbull" <stephen@xemacs.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: miles@gnu.org, emacs-devel@gnu.org
Subject: Re: base
Date: Sun, 29 Aug 2010 04:16:16 +0900 [thread overview]
Message-ID: <87fwxy4kfz.fsf@uwakimon.sk.tsukuba.ac.jp> (raw)
In-Reply-To: <83lj7qlk1r.fsf@gnu.org>
Eli Zaretskii writes:
> > user? In git, that's simple to express:
> >
> > git rebase --onto my-branch feature-parent feature-branch
>
> In bzr, it's also simple:
>
> bzr rebase ../parent
No, it's not that simple. You need to specify three things which can
vary more or less independently: the first version to rebase, the last
version to rebase, and where to rebase them. The bzr syntax only
allows two of the three: the current branch, and the point at which to
rebase. It *can't* work in the general case.
> (modulo bugs in `rebase'). Or, if we don't want to futz with
> `rebase':
>
> bzr merge -rN1..N2 ../feature-branch
>
> assuming that revisions N1 to N2 introduced "the feature" on the
> other branch.
That does the wrong thing. Although it merges the right content, it
loses all the history.
> > *Explaining how* to do it, though, requires some knowledge.
> I have no problems explaining why the latter works, see below. As
> for the former, the documentation of `rebase' seem to be clear
> enough, FWIW.
Then you have *real* problems, because you think you know what you're
doing, but you don't.
Of course, it's possible that your model is sufficient for your
purposes. Maybe you don't use rebase at all, or maybe history loss
doesn't bother you in this case. Good for you! But that makes your
input into discussions of *project* workflow quite suspect, because
your advice is at best irrelevant, and at worst wrong, for what some
of your colleagues want to do.
> > Because I *don't like* working in a separate tree for *some*
> > purposes, although I readily create separate workspaces (in git)
> > for others. Why should power users have to put up with these
> > limitations?
> I don't see it as a limitation. Disk space is not at premium
> anymore. OTOH, the mental resources needed to remember which
> branch I'm on now _are_ at premium with this old fart. I prefer to
> see the branch name right there at the shell prompt, to serve as a
> reminder.
Good for you. But why should your preferences rules *my* workflow?
It's not a question of disk space. It's a question of preferred
workflow. I like git's colocated model for some purposes, like a
quick switch to a branch for accumulating typo fixes, or recording
alternative specifications of a feature and their implementations. I
also like it because it allows me to group some branches that are
related together, and add or delete branches as they become
(ir)relevant to that task, then clone the whole thing to a difference
host, or offer it to a colleague.
> > Oh? Suppose that branch foo has 4 revisions and branch bar has
> > only the first one. Now do "bzr merge -r2..4 ../foo; bzr commit
> > -m merge" in branch bar.
> "bzr merge -rN1..N2 FOO" applies to the current branch the changes
> introduced in revisions (N1..N2] of branch FOO.
Yes, it does that ... for the content. However, it forgets the
history N1..N2 which was just applied, which is undesirable for two
reasons: first, I want to see it with an ordinary log command (not
switching branches), and second, at least in theory the VCS should be
able to use that information to avoid merge conflicts in the future
should that branch be merged again.
> That's the simple mental model I have about "bzr merge", and it
> seems to work for me. For the situation you describe, it should
> add files `baz' and `quux', which were added in revisions 3 and 4
> in branch foo.
>
> > Did you predict the output correctly?
>
> Yes, assuming you mean this output:
>
> /tmp/test/bar$ bzr merge -r2..4 ../foo; bzr commit -m merge
> +N baz
> +N quux
> All changes applied successfully.
> Committing to: /tmp/test/bar/
> added baz
> added quux
> Committed revision 2.
No, I mean the output of bzr log -n0. In particular, were you
expecting that the history of changes you just merged would just
vanish into thin air?
next prev parent reply other threads:[~2010-08-28 19:16 UTC|newest]
Thread overview: 105+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-22 12:06 base Alan Mackenzie
2010-08-22 12:20 ` base Eli Zaretskii
2010-08-22 13:01 ` base Alan Mackenzie
2010-08-22 12:50 ` base Teemu Likonen
2010-08-22 13:20 ` base Eli Zaretskii
2010-08-23 10:38 ` base Uday S Reddy
2010-08-23 11:03 ` base Leo
2010-08-23 12:56 ` base Eli Zaretskii
2010-08-24 4:32 ` base Richard Stallman
2010-08-24 6:01 ` base Stephen J. Turnbull
2010-08-24 7:22 ` base Leo
2010-08-24 8:29 ` base Andreas Schwab
2010-08-24 8:34 ` base Stephen J. Turnbull
2010-08-24 9:10 ` base Miles Bader
2010-08-24 10:03 ` base Juanma Barranquero
2010-08-24 13:39 ` base Stephen J. Turnbull
2010-08-24 14:05 ` base Miles Bader
2010-08-24 15:00 ` base Andreas Schwab
2010-08-24 16:14 ` base Juanma Barranquero
2010-08-24 12:32 ` base Stephen J. Turnbull
2010-08-24 12:51 ` base Leo
2010-08-24 13:39 ` base Juanma Barranquero
2010-08-24 14:25 ` base Óscar Fuentes
2010-08-24 16:18 ` base Juanma Barranquero
2010-08-24 14:37 ` base David Kastrup
2010-08-24 16:22 ` base Juanma Barranquero
2010-08-24 16:38 ` base David Kastrup
2010-08-24 17:22 ` base Juanma Barranquero
2010-08-24 17:35 ` base Stephen J. Turnbull
2010-08-24 17:45 ` base Frank Schmitt
2010-08-25 4:33 ` base Stephen J. Turnbull
2010-08-25 6:38 ` base Eli Zaretskii
2010-08-25 8:48 ` base Stephen J. Turnbull
2010-08-25 9:02 ` base Eli Zaretskii
2010-08-25 13:17 ` base Stephen J. Turnbull
2010-08-25 18:12 ` base Eli Zaretskii
2010-08-25 20:34 ` base Óscar Fuentes
2010-08-25 20:43 ` base Bernardo Barros
2010-08-25 20:55 ` base Eli Zaretskii
2010-08-24 18:00 ` base Leo
2010-08-24 19:04 ` base Juanma Barranquero
2010-08-24 23:44 ` base Miles Bader
2010-08-24 23:48 ` base Juanma Barranquero
2010-08-25 0:19 ` base Miles Bader
2010-08-25 3:13 ` base Eli Zaretskii
2010-08-25 3:44 ` base Miles Bader
2010-08-25 5:46 ` base Eli Zaretskii
2010-08-25 8:15 ` base Stephen J. Turnbull
2010-08-25 9:35 ` base Uday S Reddy
2010-08-25 10:43 ` base Juanma Barranquero
2010-08-25 15:34 ` base Stephen J. Turnbull
2010-08-25 11:21 ` base Eli Zaretskii
2010-08-25 13:13 ` base Óscar Fuentes
2010-08-25 15:11 ` base Harald Hanche-Olsen
2010-08-25 19:08 ` base Eli Zaretskii
2010-08-25 19:07 ` base Eli Zaretskii
2010-08-25 21:06 ` base Óscar Fuentes
2010-08-26 3:10 ` base Eli Zaretskii
2010-08-26 3:27 ` base Miles Bader
2010-08-26 3:29 ` base Miles Bader
2010-08-26 5:37 ` base Eli Zaretskii
2010-08-26 6:29 ` base Leo
2010-08-26 8:23 ` base Uday S Reddy
2010-08-26 9:16 ` base Eli Zaretskii
2010-08-26 12:25 ` base Uday S Reddy
2010-08-26 12:35 ` base Eli Zaretskii
2010-08-26 13:27 ` base Óscar Fuentes
2010-08-26 13:49 ` base Eli Zaretskii
2010-08-26 14:42 ` base Óscar Fuentes
2010-08-26 15:11 ` base David Robinow
2010-08-26 15:50 ` base Óscar Fuentes
2010-08-26 15:28 ` base David Kastrup
2010-08-27 5:33 ` base Stephen J. Turnbull
2010-08-27 13:25 ` base Óscar Fuentes
2010-08-28 15:18 ` base Stephen J. Turnbull
2010-08-26 11:01 ` base Stephen J. Turnbull
2010-08-26 17:08 ` base Eli Zaretskii
2010-08-27 13:03 ` base Stephen J. Turnbull
2010-08-27 13:52 ` base Eli Zaretskii
2010-08-27 14:25 ` base Miles Bader
2010-08-27 15:25 ` base Eli Zaretskii
2010-08-28 16:25 ` base Stephen J. Turnbull
2010-08-28 17:32 ` base Eli Zaretskii
2010-08-28 18:58 ` base Leo
2010-08-28 19:58 ` base Eli Zaretskii
2010-08-28 22:51 ` base Leo
2010-08-28 19:16 ` Stephen J. Turnbull [this message]
2010-08-28 20:00 ` base Eli Zaretskii
2010-08-29 12:21 ` base Stephen J. Turnbull
2010-08-26 18:09 ` base Uday S Reddy
2010-08-25 16:09 ` base Stephen J. Turnbull
2010-08-25 18:51 ` base Eli Zaretskii
2010-08-26 10:25 ` base Stephen J. Turnbull
2010-08-26 11:26 ` base Eli Zaretskii
2010-08-26 11:52 ` base Leo
2010-08-27 5:43 ` base Stephen J. Turnbull
2010-08-27 6:57 ` base Eli Zaretskii
2010-08-27 7:06 ` base David Kastrup
2010-08-27 13:16 ` base Óscar Fuentes
2010-08-25 7:38 ` base Leo
2010-08-25 7:41 ` base Juanma Barranquero
2010-08-25 13:23 ` base Teemu Likonen
2010-08-25 9:07 ` base Uday S Reddy
2010-08-24 14:09 ` base Miles Bader
2010-08-24 14:13 ` base Miles Bader
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=87fwxy4kfz.fsf@uwakimon.sk.tsukuba.ac.jp \
--to=stephen@xemacs.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=miles@gnu.org \
/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.