Как исправить коммит на верхний в Git? - PullRequest
0 голосов
/ 25 сентября 2019

При перебазировании в Git мы обычно можем присоединить (fixup, squash) несколько коммитов к нижнему, например, A, B, C -> A' (здесь B и C новее, чем A).Это не очень хорошая практика, поскольку вы видите дату начала работы (коммит А), но не ее окончание (коммит С).Как вы сделали функцию 23.09.2019, но не 25.09.

Теперь у нас есть несколько коммитов и мы хотим исправить A, B, C на C: A, B, C, D, E -> C', D', E'.Как это сделать?

1 Ответ

1 голос
/ 25 сентября 2019

Я бы поступил так

# We first point to C
git checkout C

# Then we "unpack" changes between A and C into the working tree
git reset --soft A

# Let's now create commit C'
git commit -m "Message for C' (so A,B and C)"

# and finally we just have to bring back copies of D and E
git cherry-pick D E
...