[Insight-developers] Gerrit, Git, aliases and squashing commits
Gaëtan Lehmann
gaetan.lehmann at jouy.inra.fr
Fri Oct 15 17:51:56 EDT 2010
Hi,
I'm working on the integration in ITK of the rest of my contribution
"Label object representation and manipulation with ITK". I already
have 25 commits - one per new class with its tests - and a few more to
come.
I don't want to merge all those commits in a single one - I think they
are quite logical that way, and a huge commit would be quite hard to
review in gerrit - but I'm afraid such a set of commits in gerrit
wouldn't be much usable.
What would be the best way to go?
Regards,
Gaëtan
Le 15 oct. 10 à 19:53, Marcus D. Hanwell a écrit :
> Hi,
>
> I was going through some of the instructions on the ITK community
> concerning Gerrit and staging changes. I will talk more about this
> at the ITK meeting in November, but I don't think you should be
> squashing commits before sending them to Gerrit unless you also
> intend to merge them into ITK in that form. Gerrit is offering us
> review of commits before they go into our repository, and the
> opportunity to fix these commits before they are merged.
>
> If you think there are too many micro-commits to push to Gerrit then
> I would argue there are too many to push into our repository. The
> whole point of retaining history is so that people can also go in
> after the fact and review previous commits for various reasons.
> Gerrit tracks the dependencies of commits in a topic branch, you can
> look at a patch's dependencies and follow needed-by until you reach
> the end of a topic branch. You can then copy/paste the checkout
> line, and even make it into a local topic branch with the same name,
>
> git fetch http://review.source.kitware.com/p/ITK refs/changes/
> 61/161/1 && git checkout FETCH_HEAD
> git checkout -b GitAliases
>
> Using the simple command line below you can see what commits you
> have that are not yet merged into master,
>
> git log --oneline --graph origin/master..
>
> You can then compile and test these changes (if necessary), and even
> stage this topic branch in the case of commits coming from the
> community. Using the new aliases,
>
> git stage-push
>
> To merge the topic,
>
> git stage-merge
>
> Gerrit certainly needs some work to make topic branches simpler to
> deal with in the interface, but this level of interaction is already
> possible. It is how I work with Gerrit, and I have reviewed several
> lengthy topic branches using this workflow. I also wanted to point
> out that if you have Change-Id inserted as the last line of your
> commit message then,
>
> git push stage HEAD:refs/for/master
>
> Would be enough to update any commits you have changed on your topic
> branch, as Gerrit uses the Change-Id lines to resolve the newly
> pushed commits to the ones it has seen and update the patch sets
> accordingly. Thus, making it very simple to push an updated topic
> branch and keep all dependencies consistent.
>
> Hopefully this makes a few things clearer, I will be listening out
> for any more feedback/issues and look forward to meeting some of you
> at the ITK meeting.
>
> Marcus
> --
> Marcus D. Hanwell, Ph.D.
> R&D Engineer, Kitware Inc.
> (518) 881-4937
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
--
Gaëtan Lehmann
Biologie du Développement et de la Reproduction
INRA de Jouy-en-Josas (France)
tel: +33 1 34 65 29 66 fax: 01 34 65 29 09
http://voxel.jouy.inra.fr http://www.itk.org
http://www.mandriva.org http://www.bepo.fr
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 203 bytes
Desc: Ceci est une signature ?lectronique PGP
URL: <http://www.itk.org/mailman/private/insight-developers/attachments/20101015/9def73fc/attachment.pgp>
More information about the Insight-developers
mailing list