On Wed, Jun 01, 2011 at 01:47:12PM +0100, Howard Miller wrote: > Hi, > I created a branch in a project and did a series of commits. I now > discover that I really wanted to make all those changes against a > completely different branch of the same project. There shouldn't be > any issues as the branch introduces entirely new files (no changes to > existing code). > I'm struggling to see a way to do this without loosing the history. > Some Google'ing suggests 'rebase --onto' but I'm struggling to see how > this works or if it is appropriate. Any pointers much appreciated :) > Thanks. "git rebase" is indeed what you want to do. Simply put, it takes all your commits and rebases them somewhere else; i.e., makes them sit on top of a different commit. See "git help rebase" for a more detailed explanation. Of course, if you've already pushed and people have pulled from you, you'll have problems; see the "recovering from upstream rebase" section in "git help rebase". You'll also want to do "git rebase -i". The "-i" option ensures that you can review what commits will be rebased, and even rearange, leave out, or edit commits. Good luck. -- () ascii ribbon campaign - against html e-mail /\ www.asciiribbon.org - against proprietary attachments
Attachment:
signature.asc
Description: Digital signature