Re: rebase problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Vincent van Ravesteijn <vfr@xxxxxxx> wrote on 2012/03/17 17:11:21:
>
> Op 17-3-2012 15:31, Joakim Tjernlund schreef:
> > Vincent van Ravesteijn<vfr@xxxxxxx>  wrote on 2012/03/17 14:30:42:
> >> Op 17-3-2012 13:57, Joakim Tjernlund schreef:
> >>> A co-worker this on our local u-boot repo:
> >>>     git checkout master
> >>>     git fetch denx/master
> >>>     git merge denx/master
> >>> <resolve conflicts>
> >>>     git commit
> >>>     ...
> >>>     git commit
> >>> Now u-boot is working again
> >>> then update to latest u-boot so:
> >>>     git fetch denx/master
> >>>     git rebase denx/master
> >>> Now it is a mess, that rebase seems to start from way back as a
> >>> staring reference, not from the last merge shown above.
> >>> I guess I forgotten how git works, what did go wrong?
> >>>
> >>>     Jocke
> >>>
> >>> --
> >>> To unsubscribe from this list: send the line "unsubscribe git" in
> >>> the body of a message to majordomo@xxxxxxxxxxxxxxx
> >>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> The situation is like this:
> >>
> >>    master - C - o - o - D - o - o - o - A
> >>                        /
> >>    denx/master- - - - o - o - o - o - B
> >>
> >> Now, you ask to rebase master (A) onto denx/master (B). If master would
> >> have started from D, it would indeed apply the commits D -- A on top of
> >> B. In your case, however, master already had a lot of commits that were
> >> not in denx/master: C -- D  (including the merge resolution). So it will
> >> also apply C -- D on top of  B.
> > Thanks, this makes sense. How do I get from above to
> >
> >     master - C - o - o - D - o - o - o - A
> >                         /
> >     denx/master- - o - B
> >
> >
> > Jocke
> >
> Don't you just want to merge with denx/master again ?
>
>     master - C - o - o - D - o - o - o - A
>                         /               /
>     denx/master- - o - o - o - o - o - B
>
>
> In this way you pull in the new commits from denx/master.
>
> Of course you can rework your history such to obtain what you drew
> above, but this means you need to rewrite some of the history, which you
> probably don't want to do if you share this code with colleagues. But
> well, if you really want:
>
> git checkout D~1
> git merge B
> git rebase --onto HEAD D master

Thanks, the code has not been pushed yet and we don't want more merges than
necessary so I will try your suggestion on Monday when I meet meet my co-worker
again.

 Once again, thanks
                      Jocke


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]