git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Joshua Jensen <jjensen@workspacewhiz.com>
To: Theodore Tso <tytso@MIT.EDU>
Cc: "Jeff King" <peff@peff.net>,
	"Jon Seymour" <jon.seymour@gmail.com>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
	"git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: Coping with the pull-before-you-push model
Date: Tue, 14 Sep 2010 09:51:22 -0600	[thread overview]
Message-ID: <4C8F99FA.3040003@workspacewhiz.com> (raw)
In-Reply-To: <D4360EBB-7891-457E-A6AC-7159CADCAC6C@mit.edu>

  ----- Original Message -----
From: Theodore Tso
Date: 9/14/2010 6:12 AM
> On Sep 14, 2010, at 12:47 AM, Joshua Jensen wrote:
>>> Bear in mind that you can still shift to a maintainer model, but keep
>>> the maintainer automated. That is, you can queue up "to-pull" heads, and
>>> then have an automated process pull them one by one and do some basic QA
>>> (does it merge, does it build, does it pass automated tests, etc). Which
>> Do you know of any existing software that does this?  This may be ideal in the short ter
> Our workflow at $WORK involves pushing changes to gerrit to various "effort branches", and then once they are approved, we have a "Mergitator" script that will attempt to merge the effort branch with the merged master branch, and then attempt to do a build.  If the build succeeds, then the changes will get pushed back to the publically visible merged master branch, and then the Mergitator will move on to the next effort branch that requires merging.   If there is a merge conflict, the Mergitator will refuse the merge, and then give instructions on how to fix up the tree to avoid merge conflicts.
>
How does the integration with Gerrit work here?  The only thing that 
comes to mind is that you do something like:

git push gerrit HEAD:refs/for/merged-master

Then the approvals are done.  Afterward, Gerrit merges to the 
merged-master branch.

I would suppose an external script is performing regular fetches.  When 
it sees new code, it builds.

No, this can't be right, but I'll leave my incorrect workflow here.
> So this probably doesn't help you since I suspect you meant to ask the question, "do you know of any existing publically available software", but I can tell you that it certainly can be done, and that software exists.  Making it be software which is useful and usable to you would definitely take more work...
It's the branch queueing issue that is my current hang up.  Gerrit's 
method is slick, but that won't work outside of JGit.  I'm not opposed 
to JGit; I just haven't touched Java in years.

So, perhaps, a web interface where the branch owner selects the (pushed 
to central server) branch name that is ready to go.  A merge is 
attempted.  If it succeeds, great.  If it fails, then the merge is reset?

Josh

  reply	other threads:[~2010-09-14 15:51 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-09  4:47 Coping with the pull-before-you-push model Joshua Jensen
2010-09-09 13:06 ` Ævar Arnfjörð Bjarmason
2010-09-09 14:43   ` Joshua Jensen
2010-09-10  5:35     ` Jon Seymour
2010-09-10 14:15       ` Jeff King
2010-09-14  4:47         ` Joshua Jensen
2010-09-14  5:24           ` Jeff King
2010-09-14  5:59             ` Avery Pennarun
2010-09-15 21:59             ` David Brown
2010-09-14 12:12           ` Theodore Tso
2010-09-14 15:51             ` Joshua Jensen [this message]
2010-09-14 16:24               ` Eugene Sajine
2010-09-14 16:49               ` Ted Ts'o
2010-09-14  4:37       ` Joshua Jensen

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=4C8F99FA.3040003@workspacewhiz.com \
    --to=jjensen@workspacewhiz.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jon.seymour@gmail.com \
    --cc=peff@peff.net \
    --cc=tytso@MIT.EDU \
    /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).