To mówi:
Kiedy zapiszesz i wyjdziesz z edytora, przewinie cię on z powrotem do ostatniego zatwierdzenia na tej liście i upuści cię w wierszu poleceń z następującym komunikatem:
$ git rebase -i HEAD~3
Stopped at 7482e0d... updated the gemspec to hopefully work better
You can amend the commit now, with
To nie znaczy:
Wpisz ponownie git rebase -i HEAD~3
Staraj się nie pisać git rebase -i HEAD~3przy wychodzeniu z edytora i powinno działać dobrze.
(w przeciwnym razie w twojej konkretnej sytuacji git rebase -i --abortmoże być potrzebny, aby zresetować wszystko i pozwolić ci spróbować ponownie)
Jak wspomina Dave Vogt w komentarzach, git rebase --continuechodzi o przejście do następnego zadania w procesie zmiany bazy, po poprawieniu pierwszego zatwierdzenia .
Ponadto, Gregg Lind wspomina w swej odpowiedzi rewordpoleceń zgit rebase :
Zastępując polecenie „wybierz” poleceniem „edytuj”, możesz nakazać git rebasezatrzymanie po zastosowaniu tego zatwierdzenia, aby móc edytować pliki i / lub komunikat o zatwierdzeniu, zmienić zatwierdzenie i kontynuować zmianę bazy.
Jeśli chcesz po prostu edytować komunikat o zatwierdzeniu dla zatwierdzenia, zamień polecenie „ pick” na polecenie „ reword” od Git1.6.6 (styczeń 2010) .
Robi to samo ' edit' podczas interaktywnego ponownego bazowania, z wyjątkiem tego , że pozwala tylko edytować komunikat zatwierdzenia bez zwracania kontroli do powłoki . Jest to niezwykle przydatne.
Obecnie, jeśli chcesz wyczyścić swoje wiadomości w zmianach, musisz:
$ git rebase -i next
Następnie ustaw wszystkie zatwierdzenia na „edytuj”. Następnie na każdym:
# Change the message in your editor.
$ git commit --amend
$ git rebase --continue
Użycie „ reword” zamiast „ edit” pozwala pominąć wywołania git-commitigit-rebase .
git rebase --continueprzechodzi do następnego zadania w procesie podścielanie, po tym, jak zmienione pierwszy popełnić.