From: Junio C Hamano <junkio@cox.net>
To: Linus Torvalds <torvalds@osdl.org>
Cc: git@vger.kernel.org
Subject: Re: How to switch kernel customizations from 2.6.15.6 to 2.6.16?
Date: Wed, 29 Mar 2006 12:24:33 -0800 [thread overview]
Message-ID: <7vd5g580e6.fsf@assigned-by-dhcp.cox.net> (raw)
In-Reply-To: <Pine.LNX.4.64.0603291102440.15714@g5.osdl.org> (Linus Torvalds's message of "Wed, 29 Mar 2006 11:27:46 -0800 (PST)")
Linus Torvalds <torvalds@osdl.org> writes:
> In contrast, here's an alternate workflow that is much easier to explain,
> and doesn't involve "rebase" at all:
>
> git checkout his
> git cherry-pick origin..mine
Yes, I think it would be good to deprecate/discard the current
rebase and make cherry-pick the recommended workflow.
Optionally. I've been thinking about not using git-cherry while
cherrypicking, because falling back to three-way merge seems to
work equally well in dealing with "patch already applied" case.
Anyway, teaching the range notation to cherry-pick would be
something like this, I suppose.
---
diff --git a/git-cherry-pick.sh b/git-cherry-pick.sh
new file mode 100755
index 0000000..72a3828
--- /dev/null
+++ b/git-cherry-pick.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+. git-sh-setup
+
+git-format-patch --stdout --full-index -k "$@" |
+git-am --binary -3 -k
diff --git a/Makefile b/Makefile
index d945546..e130d8c 100644
--- a/Makefile
+++ b/Makefile
@@ -114,7 +114,7 @@ ### --- END CONFIGURATION SECTION ---
SCRIPT_SH = \
git-add.sh git-bisect.sh git-branch.sh git-checkout.sh \
- git-cherry.sh git-clone.sh git-commit.sh \
+ git-cherry.sh git-cherry-pick.sh git-clone.sh git-commit.sh \
git-count-objects.sh git-diff.sh git-fetch.sh \
git-format-patch.sh git-log.sh git-ls-remote.sh \
git-merge-one-file.sh git-parse-remote.sh \
@@ -139,7 +139,7 @@ SCRIPT_PYTHON = \
SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \
$(patsubst %.perl,%,$(SCRIPT_PERL)) \
$(patsubst %.py,%,$(SCRIPT_PYTHON)) \
- git-cherry-pick git-show git-status
+ git-show git-status
# The ones that do not have to link with lcrypto nor lz.
SIMPLE_PROGRAMS = \
@@ -484,9 +484,6 @@ common-cmds.h: Documentation/git-*.txt
-e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
$@.py >$@
chmod +x $@
-
-git-cherry-pick: git-revert
- cp $< $@
git-show: git-whatchanged
cp $< $@
next prev parent reply other threads:[~2006-03-29 20:24 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-29 1:43 How to switch kernel customizations from 2.6.15.6 to 2.6.16? Matt McCutchen
2006-03-29 2:10 ` Linus Torvalds
2006-03-29 2:30 ` Junio C Hamano
2006-03-29 3:58 ` Junio C Hamano
2006-03-29 19:27 ` Linus Torvalds
2006-03-29 19:39 ` Linus Torvalds
2006-03-29 20:24 ` Junio C Hamano [this message]
2006-03-30 1:59 ` Rebase semantic and cherry-pick Jakub Narebski
2006-03-30 2:38 ` Junio C Hamano
2006-03-30 2:54 ` Linus Torvalds
2006-03-30 3:40 ` Junio C Hamano
2006-03-30 3:15 ` How to switch kernel customizations from 2.6.15.6 to 2.6.16? Junio C Hamano
2006-03-29 2:23 ` Shawn Pearce
2006-03-29 2:26 ` Junio C Hamano
2006-03-30 3:01 ` Matt McCutchen
2006-03-30 3:22 ` Junio C Hamano
2006-03-30 3:47 ` Matt McCutchen
2006-03-30 17:32 ` Linus Torvalds
2006-03-30 21:50 ` Matt McCutchen
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7vd5g580e6.fsf@assigned-by-dhcp.cox.net \
--to=junkio@cox.net \
--cc=git@vger.kernel.org \
--cc=torvalds@osdl.org \
/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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).