all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Óscar Fuentes" <ofv@wanadoo.es>
To: emacs-devel@gnu.org
Subject: Re: Strange response after merge from upstream
Date: Wed, 02 Dec 2009 05:56:35 +0100	[thread overview]
Message-ID: <87bpii55z0.fsf@telefonica.net> (raw)
In-Reply-To: 83skbuko4g.fsf@gnu.org

Eli Zaretskii <eliz@gnu.org> writes:

> I understand that, but that commit was because merge by itself does
> not commit the changes I pulled from the mainline.  Without the
> commit, bzr was even less happy.
>
> I guess I expected to see nothing from "missing" after these
> operations, since really the branch is an exact copy of the upstream.
> Evidently, that's not "missing"'s logic and purpose.  "bzr diff" did
> come up empty-handed, as expected.

On one branch you used `pull', which adds revisions on top of those you
previously had. So if you pulled 10 revisions, you have 10 more
revisions on the history of that branch.

On the other branch you merged the missing revisions and then you had to
commit the merge after resolving conflicts, if any. You end with 10
revisions coming from the parent branch plus one revision from your
commit totalling 11. If the source tree ends being indentical on both
cases, it is just by chance. Nothing prevents you from editing the files
before the post-merge commit.

The key here is that the final history of those branches allows them to
contain different working files, i.e. you can't guarantee that the
branches have not diverged looking at the set of revisions they contain
and how they arranged on its DAG. One branch has a revision that is
unknown by the other.

As you probably already know, each revision has a revision-id that makes
it unique and is used for checking its existence on a branch, no matter
if it was originated there or arrived via pull or merge. That two
branches ends containing the same source code is irrelevant if the
revisions they contain and their arrangement on the respective DAGs
makes the branches non-equivalent.

>> You may want to use `bzr merge --pull` to get equivalent of git
>> fast-forward merge.  merge --pull will pull new changes from other
>> branch if possible, thus make your branch a copy of the other
>> branch. Or it will do merge when 2 branches are diverged, i.e. both
>> branches has new commits, not present in other branch.
>
> I don't know git.  How is "merge --pull" different from merge followed
> by commit?

merge -pull does this:

if branches-diverged?
  yes: merge  (you need to explicitly commit afterwards)
  no : pull   (no need to commit)

> would it avoid the "1 extra revision" in the output of "missing"?

Yes, because your quickfixes/ branch did not diverged from the branch
you pulled from, so it will do a `pull', like you did on your trunk
branch.

-- 
Óscar





  reply	other threads:[~2009-12-02  4:56 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-01 19:20 Strange response after merge from upstream Eli Zaretskii
2009-12-01 22:04 ` Stefan Monnier
2009-12-01 22:21   ` Andreas Schwab
2009-12-02  1:54     ` Stefan Monnier
2009-12-02  2:09       ` Óscar Fuentes
2009-12-02  4:29         ` Stefan Monnier
2009-12-02 10:48       ` Andreas Schwab
2009-12-01 22:23 ` Alexander Belchenko
2009-12-02  4:15   ` Eli Zaretskii
2009-12-02  4:56     ` Óscar Fuentes [this message]
2009-12-02  5:58       ` Eli Zaretskii
2009-12-02  6:26         ` Óscar Fuentes
2009-12-02 10:53           ` Eli Zaretskii
2009-12-02 14:31             ` Stefan Monnier
2009-12-02 17:40               ` Eli Zaretskii
2009-12-02  6:14     ` Stephen J. Turnbull
2009-12-02  7:05       ` Óscar Fuentes
2009-12-02 14:29         ` Stefan Monnier
2009-12-02 17:44           ` Óscar Fuentes
2009-12-02 19:37             ` Stefan Monnier
2009-12-02 17:55         ` Alexander Belchenko

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=87bpii55z0.fsf@telefonica.net \
    --to=ofv@wanadoo.es \
    --cc=emacs-devel@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.