Re: how to combine 2 commits?
- From
Sitaram Chamarty <sitaramc@gmail.com>
- Date
- Jan 13, 2009, 06:35 UTC
- Message-ID
- <slrngmodgv.ple.sitaramc@sitaramc.homelinux.net>
- In-Reply-To
- <20090113045422.GA6940@b2j>
On 2009-01-13, bill lam <cbill.lam@gmail.com> wrote:
Show 9 quoted lines
> 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.