Max Cameron
Max Cameron

Reputation: 4887

How do I squash all commits without losing submodules?

I like the answers from How to squash all git commits into one?.

However, I get merge conflicts if I:

git rebase --root -i

with pick and squash as suggested.

And, I lose my submodules (I have 5), when I

rm -rf .git
git init
git add .

What is the most effective way to squash all history and keep my submodules in their current directories at their current sha.

Upvotes: 7

Views: 2808

Answers (1)

MrTux
MrTux

Reputation: 34002

Try git reset --soft SHAOFFIRSTCOMMIT and then git commit --amend

The first command resets the current branch to the first commit, but keeps the current index and the second command commits the current index in the last commit.

Upvotes: 7

Related Questions