Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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.

like image 681
J0hnG4lt Avatar asked May 14 '15 11:05

J0hnG4lt


1 Answers

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.

like image 135
MrTux Avatar answered Oct 31 '22 19:10

MrTux