git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Peter Harris <git@peter.is-a-geek.org>
To: James Pickens <jepicken@gmail.com>
Cc: Git ML <git@vger.kernel.org>
Subject: Re: Disallow amending published commits?
Date: Sat, 21 Mar 2009 21:53:49 -0400	[thread overview]
Message-ID: <eaa105840903211853p65327ffdvebbe28da5f256871@mail.gmail.com> (raw)
In-Reply-To: <885649360903211549h751c19e6sbaa0e07a14413d19@mail.gmail.com>

On Sat, Mar 21, 2009 at 6:49 PM, James Pickens wrote:
> On Sat, Mar 21, 2009, Peter Harris <git@peter.is-a-geek.org> wrote:
>> Set receive.denyNonFastForwards if you don't want people to be able to
>> amend (or otherwise rewind) published history.
>
> Thanks, but unfortunately that won't work in our workflow.  Users never
> push their changes; instead, they do a turnin to a continuous integration
> server.  The server clones the central repo, pulls their changes into the
> clone, builds and tests it, then pushes to the central repo if it passes
> the tests.  So integration happens via 'pull' instead of 'push'.
>
> We can't force the pulls to be fast forward only, because we need to allow
> turnins from multiple users to be built and tested in parallel, without
> requiring users to pull from each other or otherwise coordinate their
> turnins.

Okay. So in that workflow, you won't ever lose the original history.

If someone creates an alternate history that differs only slightly,
odds are your continuous integration server will get a merge conflict.
Presumably it will reject the pull request at that point.

If it doesn't conflict, you'll have both alternate histories. So
nothing is lost.

Maybe I'm misunderstanding the question? (That is definitely possible.
The idea that a person would go to the effort of rewriting history -
especially when that person knows the original history would stay put
- often enough to cause problems is like suggesting that a person
might write log messages in latin. I'm having a hard time envisioning
the need to write down a social rule about it, much less the need to
write an AI to try to detect it.)

Peter Harris

  reply	other threads:[~2009-03-22  1:58 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-21 17:56 Disallow amending published commits? James Pickens
2009-03-21 18:46 ` Peter Harris
2009-03-21 22:49   ` James Pickens
2009-03-22  1:53     ` Peter Harris [this message]
2009-03-22  2:57       ` Peter Harris
2009-03-22  4:09       ` James Pickens
2009-03-22 14:19         ` Peter Harris
2009-03-22 15:15         ` Nicolas Sebrecht
2009-03-22  2:42 ` Jeff King

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=eaa105840903211853p65327ffdvebbe28da5f256871@mail.gmail.com \
    --to=git@peter.is-a-geek.org \
    --cc=git@vger.kernel.org \
    --cc=jepicken@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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).