Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Will Newton <will.newton@linaro.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: Joel Brobecker <brobecker@adacore.com>,
	ricard.wanderlof@axis.com,
		"gdb-patches@sourceware.org" <gdb-patches@sourceware.org>
Subject: Re: reject merges on gdb release branches?
Date: Fri, 24 Jan 2014 10:35:00 -0000	[thread overview]
Message-ID: <CANu=Dmh39cA462XRa=+254n3CwZ5M3peAQBhN-bhV6A6OuXuzQ@mail.gmail.com> (raw)
In-Reply-To: <83a9eleksf.fsf@gnu.org>

On 24 January 2014 10:28, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Fri, 24 Jan 2014 10:09:06 +0000
>> From: Will Newton <will.newton@linaro.org>
>> Cc: Joel Brobecker <brobecker@adacore.com>, ricard.wanderlof@axis.com,
>>       "gdb-patches@sourceware.org" <gdb-patches@sourceware.org>
>>
>> The problem with merge commits is they make the history noisy. If I
>> have a long running development branch I could have lots of:
>>
>> Merge branch 'master'
>
> That's easy enough to skip, if you aren't interested (I am).  I don't
> see any real problem here, any development history has some amount of
> noise if you are looking for certain things and aren't interested in
> others.

That's fine if you have one or two, but in the degenerate case you may
have half your commit history being merges. It's simply not helpful to
anyone.

>> Commits that don't serve any function. Yes, they mark that I merged
>> master at that point, but if the changes do not interact with mine
>> that is irrelevant
>
> In many, if not most, cases you will not know if they interact or
> don't.  Once you've rewritten that part of history, it is lost
> forever, even if you later need it.

The history is not lost, the history is all present. Essentially you
have done the merge yourself (as part of the rebase) and squashed the
merge into the functional commit. Now it is possible you mismerged and
your commit is now bad, but it is still a single atomic change that
can be reverted simply. I would rather deal with that than have to
wade through a number of merge commits to see what cumulative effect
they have. Personal preference perhaps.

>> and if they do then I no longer have a standalone
>> commit I can point to as "the feature was added in commit 123abc".
>
> ??? Why not?  When you commit a merge, it doesn't add back the commits
> that were on master; you still add only your changes.  The difference
> is that, when bisecting later, you will see that a merge introduced a
> bug, whereas after a rebase, that merge will no longer be visible, and
> it will look as if your changes alone introduced the bug.  Which is a
> lie.

Therein lies the issue though, you can only rebase in a single line of
history, so you will only see the merge commit caused the problem even
if it merges many commits.

>> Even worse if people work on master and have a "git commit; git pull;
>> git push" workflow then you can get almost one merge commit per-commit
>> which makes browsing the history a real mess.
>
> Mess or not, that is really what happened, whereas re-written history
> is a lie.

Lie is rather an emotive term don't you think?

> Again, you should be free to rebase if you like, but why can't _I_
> merge instead?  Why should your personal preferences constrain my
> workflows?

As I said, it's not about the committer, it's about the future readers
of the history.

-- 
Will Newton
Toolchain Working Group, Linaro


  reply	other threads:[~2014-01-24 10:35 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-22  5:11 Joel Brobecker
2014-01-22  5:22 ` Doug Evans
2014-01-22  5:48 ` Yao Qi
2014-01-22  7:37   ` Joel Brobecker
2014-01-22 12:45     ` Yao Qi
2014-01-22 12:37 ` Pedro Alves
2014-01-22 15:35 ` Eli Zaretskii
2014-01-22 16:15   ` Joel Brobecker
2014-01-22 16:23     ` H.J. Lu
2014-01-22 16:39     ` Eli Zaretskii
2014-01-23  7:46       ` Ricard Wanderlof
2014-01-23 16:17         ` Eli Zaretskii
2014-01-24  7:36           ` Ricard Wanderlof
2014-01-24  7:56             ` Eli Zaretskii
2014-01-24  8:07               ` Doug Evans
2014-01-24  8:38                 ` Eli Zaretskii
2014-01-24  8:07               ` Joel Brobecker
2014-01-24  8:54                 ` Eli Zaretskii
2014-01-24 10:09                   ` Will Newton
2014-01-24 10:28                     ` Eli Zaretskii
2014-01-24 10:35                       ` Will Newton [this message]
2014-01-24 10:48                         ` Eli Zaretskii
2014-01-24 10:58                           ` Joel Brobecker
2014-01-24 11:11                             ` Eli Zaretskii
     [not found]                               ` <20140124113014.GN4762@adacore.com>
2014-01-24 11:38                                 ` Joel Brobecker
2014-01-24 11:39                                 ` Eli Zaretskii
2014-01-24 11:55                                   ` Joel Brobecker
2014-01-24 14:27                                     ` Eli Zaretskii
2014-01-24 14:45                                       ` H.J. Lu
2014-01-24 15:44                                         ` Eli Zaretskii
2014-01-24 15:49                                           ` H.J. Lu
2014-01-24 16:02                                             ` Eli Zaretskii
2014-01-24 16:05                                               ` H.J. Lu
2014-01-24 16:18                                             ` Andreas Schwab
2014-01-22 16:07 ` Tom Tromey
2014-01-23  5:58 ` Joel Brobecker
2014-01-23 15:35   ` Tom Tromey
2014-01-24  2:18     ` Joel Brobecker
2014-01-24  3:06       ` Tom Tromey

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='CANu=Dmh39cA462XRa=+254n3CwZ5M3peAQBhN-bhV6A6OuXuzQ@mail.gmail.com' \
    --to=will.newton@linaro.org \
    --cc=brobecker@adacore.com \
    --cc=eliz@gnu.org \
    --cc=gdb-patches@sourceware.org \
    --cc=ricard.wanderlof@axis.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox