Thread (4 messages) flat view 4 messages, 3 authors, 2016-06-15

Re: git merge after git cherry-pick?

From: SZEDER Gábor <hidden>
Date: 2016-06-15 22:45:00

On Wed, Jul 23, 2008 at 07:14:49PM +0200, "Peter Valdemar Mørch (Lists)" wrote:
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   b

The command 'git rebase master b' will then turn this history into the
following:

  o---X---b1'---b3'---Y   master
                       \
                        b2---b4   b

After this 'git merge b' will do what you would like it to do.


Regards,
Gábor
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help