Re: git merge after git cherry-pick?
- From
SZEDER Gábor <szeder@ira.uka.de>
- Date
- Jul 23, 2008, 17:56 UTC
- Message-ID
- <20080723175600.GL22606@neumann>
- In-Reply-To
- <48876709.3090504@sneakemail.com>
On Wed, Jul 23, 2008 at 07:14:49PM +0200, "Peter Valdemar Mørch (Lists)" wrote:
Show 19 quoted lines
> On a branch, b, made off of master, I've made the commits b1, b2, b3 and > b4. > > Back on master, I need commit b1 and b3 immediately. So I: > > $ git checkout master > $ git cherry-pick "b1's SHA" > $ git cherry-pick "b3's SHA" > > Now, both b and master contain b1 and b3. How do I now create a log of > "what remains to be merged from b to master", i.e. only b2 and b4? And > how do I merge b2 and b4 to master, so master's log shows b1, b3, b2 and > b4 and doesn't show b1 and b3 twice, which is what I get if I: > > $ git merge b > > after the cherry-picks above. Also I noticed, that if I merge master > into b (to keep up-to-date with master) b1 and b3 are also mentioned > twice.
You could use 'git rebase' for that.
e.g. now the history of your master and b branches look like this:
o---X---b1'---b3'---Y master
\
b1---b2---b3---b4 bThe command 'git rebase master b' will then turn this history into the following:
o---X---b1'---b3'---Y master
\
b2---b4 bAfter this 'git merge b' will do what you would like it to do.
Regards, Gábor