From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carl Worth Subject: Re: Merging commits together into a super-commit Date: Thu, 10 May 2007 09:57:10 -0700 Message-ID: <87wszg39cp.wl%cworth@cworth.org> References: <1178794261.5806.98.camel@murta.transitives.com> <4643049C.3D5F30D8@eudaptics.com> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: multipart/signed; boundary="pgp-sign-Multipart_Thu_May_10_09:57:04_2007-1"; micalg=pgp-sha1; protocol="application/pgp-signature" Content-Transfer-Encoding: 7bit Cc: Johannes Sixt , git@vger.kernel.org To: Linus Torvalds X-From: git-owner@vger.kernel.org Thu May 10 18:57:27 2007 Return-path: Envelope-to: gcvg-git@gmane.org Received: from vger.kernel.org ([209.132.176.167]) by lo.gmane.org with esmtp (Exim 4.50) id 1HmBxF-0004Fc-GN for gcvg-git@gmane.org; Thu, 10 May 2007 18:57:25 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754624AbXEJQ5U (ORCPT ); Thu, 10 May 2007 12:57:20 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754871AbXEJQ5U (ORCPT ); Thu, 10 May 2007 12:57:20 -0400 Received: from theworths.org ([217.160.253.102]:41034 "EHLO theworths.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754624AbXEJQ5T (ORCPT ); Thu, 10 May 2007 12:57:19 -0400 Received: (qmail 13352 invoked from network); 10 May 2007 12:57:10 -0400 Received: from localhost (HELO raht.cworth.org) (127.0.0.1) by localhost with SMTP; 10 May 2007 12:57:10 -0400 In-Reply-To: User-Agent: Wanderlust/2.14.0 (Africa) Emacs/21.4 Mule/5.0 (SAKAKI) Sender: git-owner@vger.kernel.org Precedence: bulk X-Mailing-List: git@vger.kernel.org Archived-At: --pgp-sign-Multipart_Thu_May_10_09:57:04_2007-1 Content-Type: text/plain; charset=US-ASCII On Thu, 10 May 2007 09:01:15 -0700 (PDT), Linus Torvalds wrote: > Clearly git can, but equally clearly it really *would* be pretty nice if > you could just do > > git cherry-pick x y z > > and create one commit and have the message already somewhat done for you > (and "git revert" doing the same). Perhaps with a --squash option. I've already been wanting a cherry-pick that accepts a range, but that makes separate commits. Yes, I know there's some git-rebase thing that will do it, but I can never remember the right syntax for that without studying the documentation[*]. What I find myself wanting to type is just: git cherry-pick A..B But there is the whole problem of how to deal with any conflict that appears during the process. -Carl [*] I do use one form of rebase without ever needing to consult the documentation, but it's in the opposite "direction", if you will, from the cherry-pick-a-range operation. I use it when I want to rebase a set of commits from my current branch to some other branch, such as: git rebase origin Not surprisingly, what's common about both of the operations above is that they are really only accepting a single argument, (a range in one case, and a branch-name in the other). That's what makes for an easy-to-use command. Things that require multiple branch names in a particular order, or extra options, (see "git rebase --onto newbase upstream branch"), need someone smarter than me to drive them. Another problem is that using the optional final [] argument to git-rebase makes it change the current branch, (which no other git-rebase operation does), and that's another thing I find very confusing. I'm sure the most complex form of git-rebase solves some precise problem that someone has, (and maybe even gets used regularly). But it's got enough complications that I just ignore it, (and would instead really prefer being able to just cherry-pick a whole range). --pgp-sign-Multipart_Thu_May_10_09:57:04_2007-1 Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQBGQ07m6JDdNq8qSWgRAgVbAJsFytxUb33AbJQZdTyQBb1vLqsWlQCeKbzG rtGiiWf/lNPUYJ6HSwdU+1I= =Gbg+ -----END PGP SIGNATURE----- --pgp-sign-Multipart_Thu_May_10_09:57:04_2007-1--