From: Sitaram Chamarty Date: Tue, 13 Jan 2009 06:35:11 GMT Subject: Re: how to combine 2 commits? Message-ID: In-Reply-To: <20090113045422.GA6940@b2j> On 2009-01-13, bill lam wrote: > Sorry I don't know the correct git terminology for it. I make some > changes to scripts but also accidentally changed all scripts to use > dos linefeed. Failed to notice this and commit all changes. Then I > tried to correct it by changing all scripts back to unix > linefeed and commit again. > > How to combine these 2 commits so that the changes of linefeed cancel > out each other and the history only shows the intended changes of the > few scripts. I tend to make lots of small commits on the work tree, and having to combine them meaningfully later. I like using "git rebase -i HEAD~5" (if I want to rebase the last 5 commits). In the editor that pops up, I reorder the ones that I know should be together, and on each set to be squashed, I change the "pick" to "s" (for squash) on all but the first one. Save the file and it's all done. Works like a charm. For me, moving commits around in an editor, deleting them even, is very intuitive.