Ответ 1
Попробуйте git reset --soft SHAOFFIRSTCOMMIT
, а затем git commit --amend
Первая команда сбрасывает текущую ветвь на первую фиксацию, но текущий индекс keepsmthe и вторая команда фиксируют текущий индекс в последнем фиксации.
Мне нравятся ответы от Как раздавить все git в одном?.
Однако я получаю конфликты слияния, если I:
git rebase --root -i
с выбором и сквошем, как было предложено.
И я теряю свои подмодули (у меня 5), когда я
rm -rf .git
git init
git add .
Каков наиболее эффективный способ сквоить всю историю и сохранить мои подмодули в их текущих каталогах на их нынешнем шаре.
Попробуйте git reset --soft SHAOFFIRSTCOMMIT
, а затем git commit --amend
Первая команда сбрасывает текущую ветвь на первую фиксацию, но текущий индекс keepsmthe и вторая команда фиксируют текущий индекс в последнем фиксации.