Ich versuche, ein Commit umzubasen. Allerdings jedes Mal, wenn ich laufe git rebase -i f83eff3ffc8, öffnet sich beispielsweise ein MacVim-Fenster, das leer ist (es gibt keine Informationen in der Datei). Sobald ich die Datei schreibe und schließe (obwohl sie leer ist), erhalte ich a Successfully rebased and updated refs/heads/clicktocall-hotfix Botschaft.
Der Dateiname ist .git/rebase-merge/git-rebase-todo. Ich habe auch versucht, es mit sudo auszuführen, aber das hat keinen Unterschied gemacht.
Was könnte das Problem sein? Ich habe noch nie eine Rebase erfolgreich abgeschlossen.
Nichts mit vim zu tun. Etikett entfernt.
– manojlds
4. Januar 2012 um 7:20 Uhr
Es sieht so aus, als ob Git erfolgreich eine “No-Op”-Rebase durchführt. Was versuchst du zu machen? Bitte beschreiben Sie Ihre Zweigstruktur und wo das Commit erfolgt f83eff ist. Das könnte hilfreich sein: www-cs-students.stanford.edu/~blynn/gitmagic/ch05.html
– opqdonut
4. Januar 2012 um 8:19 Uhr
Genau, eine leere rebase -i Datei bedeutet, dass Sie versuchen, den HEAD selbst zu rebasen, so funktioniert git rebase nicht.
– fg
4. Januar 2012 um 8:55 Uhr
Readded vim-Tag, da dies standardmäßig aufgerufen wird, wenn git rebase -i ausgegeben wird.
– Adam Dymitruk
4. Januar 2012 um 16:06 Uhr
Ich habe das gleiche Problem, aber ich verwende vim nicht. Ich führe git von einem Cygwin-Terminal aus und habe versucht, meine festzulegen core.editor zu einer Reihe verschiedener Editoren wie Notepad2 und GitExtensions, aber ich erhalte immer wieder die leere Datei, wenn ich versuche, eine interaktive Rebase durchzuführen, und ich weiß nicht warum. notepad2 funktioniert, wenn ich es tue git commit. Das habe ich gehört rebase ist eigentlich ein Perl-Skript, also könnte das vielleicht etwas damit zu tun haben? Ich verwende Git-Version 1.8.1.3.
Da VSCode auf Atom basiert, funktioniert das gleiche Flag (dh code --wait)
– Sina Madani
11. April um 15:11 Uhr
Kevin Burke
Ich habe Macvim verwendet und musste mvim damit ausführen -f Option, wie hier dokumentiert: GIT_EDITOR funktioniert nicht mit Macvim
Als Referenz. Ich hatte ein ähnliches Problem beim Wechsel von Sublime zu Atom und vergaß, den Git-Editor zu aktualisieren. Das sollte helfen: git config –global core.editor “atom –wait”
– Paskal
9. Juli 2015 um 7:30 Uhr
Ich habe Atom verwendet und bin auf dieses Problem gestoßen. Ich habe meinen Standard-Editor so eingestellt:
export VISUAL=vim
export EDITOR="$VISUAL"
Jetzt funktioniert alles super.
TL;DR; Verwenden Sie Vim.
Ich bin auch in VS Code darauf gestoßen, und das Problem war, dass ich das „Warten“-Flag in meiner Editor-Konfiguration vergessen hatte.
Gelöst durch Ausführen:
git config --global core.editor "code --wait"
Sie sollten sich das nicht einmal ansehen müssen git-rebase-todo Datei. Vim sollte eine Noop-Zeile und einige Kommentare anzeigen. Nach dem Speichern sollten Sie “Successfully rebased and updated” erhalten.
Sie verwenden entweder eine alte Version von Git, Sie haben eine fehlerhafte Git-Installation oder Sie haben den .git-Ordner auf irgendeine Weise berührt, um dieses Verhalten zu bewirken.
10862300cookie-checkgit rebase -i präsentiert eine leere MacVim-Dateiyes
Nichts mit vim zu tun. Etikett entfernt.
– manojlds
4. Januar 2012 um 7:20 Uhr
Es sieht so aus, als ob Git erfolgreich eine “No-Op”-Rebase durchführt. Was versuchst du zu machen? Bitte beschreiben Sie Ihre Zweigstruktur und wo das Commit erfolgt
f83eff
ist. Das könnte hilfreich sein: www-cs-students.stanford.edu/~blynn/gitmagic/ch05.html– opqdonut
4. Januar 2012 um 8:19 Uhr
Genau, eine leere rebase -i Datei bedeutet, dass Sie versuchen, den HEAD selbst zu rebasen, so funktioniert git rebase nicht.
– fg
4. Januar 2012 um 8:55 Uhr
Readded vim-Tag, da dies standardmäßig aufgerufen wird, wenn git rebase -i ausgegeben wird.
– Adam Dymitruk
4. Januar 2012 um 16:06 Uhr
Ich habe das gleiche Problem, aber ich verwende vim nicht. Ich führe git von einem Cygwin-Terminal aus und habe versucht, meine festzulegen
core.editor
zu einer Reihe verschiedener Editoren wie Notepad2 und GitExtensions, aber ich erhalte immer wieder die leere Datei, wenn ich versuche, eine interaktive Rebase durchzuführen, und ich weiß nicht warum. notepad2 funktioniert, wenn ich es tuegit commit
. Das habe ich gehörtrebase
ist eigentlich ein Perl-Skript, also könnte das vielleicht etwas damit zu tun haben? Ich verwende Git-Version 1.8.1.3.– Benutzer456814
20. Februar 2013 um 0:25 Uhr