I'm the administrator of the GitHub repository https://github.com/plison/opendial. I would like to reduce the number of commits on the repository, since the repository already has a few thousand commits, many of whom are minor debugging changes that could easily be squashed together (especially the ones that are a few years old).
I'm therefore trying to apply rebasing in order to squash together part of my commits. However, I've experience the following issue:
git rebase -i HEAD~10
, I get a quite long number of commit lines (much more than 10) in the interactive editor. What could be the reason?How can I solve these issues? It should be noted that the repository was automatically imported from a previous (SVN) repository hosted on Google Code. The conversion seemed so far to have worked well, but I'm wondering why I get these errors when trying to rebase my commits.
The history of your project seems to contain a number of merge commits recently (presumably you made those). The presence of merge commits in what you want to interactively rebase usually causes problems. (An interactive rebase pretty much assumes a linear history, but merge commits are not linear.)
Your project history also somehow seems to have two parallel histories that are merged together in commit 11b3653 (use a tool like gitk
or tig
to see this, it's not shown well on Github's web interface).
I would suggest that you attempt to first flatten your history to get rid of the parallel histories, and to remove the merge commits. Then, once you have a strictly linear history, you can set about rewriting the history to remove all the debugging churn.