Wenn ich renne:
git status
Ich sehe es:
rebase in progress; onto 9c168a5
You are currently rebasing branch 'master' on '9c168a5'.
(all conflicts fixed: run "git rebase --continue")
nothing to commit, working directory clean
Wenn ich es tue:
ls `git rev-parse --git-dir` | grep rebase || echo no rebase
Ich sehe: Rebase-Apply
Ich kann mich nicht auf die Herkunft festlegen.
git branch
Zeigt an:
* (no branch, rebasing master)
develop
master
Ich stecke fest. Ich weiß nicht was ich tun soll? Dauert die Wiederherstellung wirklich so lange? git rebase --continue
macht nichts Ich habe nichts im Git-Status. Ich warte nur auf die Rebase. Was kann ich tun?
UDATE: Dies ist die Ausgabe von: git rebase --continue
Applying: no message
No changes - did you forget to use 'git add'?
If there is nothing left to stage, chances are that something else
already introduced the same changes; you might want to skip this patch.
When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".
git hinzufügen. hat nichts.
quelle
Ich steckte im 'Rebase-Status' fest
aber das Laufen
git rebase --skip
gab nacherror: could not read '.git/rebase-apply/head-name': No such file or directory
.Laufen hat
rm -fr ".git/rebase-apply"
geholfen.Hinweis: Tun Sie dies natürlich nur, wenn Sie sich nicht für die Rebase interessieren oder wenn Sie an einer vorherigen Rebase festhalten, die Sie nicht mehr möchten.
quelle
Schritt 1: Mach weiter
git rebase --continue
Schritt 2: Beheben Sie dann die Konflikte
git add .
Zurück zu Schritt 1. Wenn jetzt "
no changes ..
Ausführen"git rebase --skip
angezeigt wird, kehren Sie zu Schritt 1 zurückWenn Sie nur den Rebase-Lauf beenden möchten
git rebase --abort
Sobald alle Änderungen abgeschlossen sind, führen
git commit -m "rebase complete"
Sie und Sie sind fertig.quelle
Sie haben Ihrem Repository gesagt, dass es neu aufbauen soll. Es sieht so aus, als ob Sie sich auf einem Commit befanden (identifiziert durch SHA 9c168a5) und dann
git rebase master
odergit pull --rebase master
.Sie setzen den Zweigstellenmaster erneut auf dieses Commit. Sie können die Rebase über beenden
git rebase --abort
. Dies würde den Zustand wiederherstellen, in dem Sie sich befanden, bevor Sie mit der Neugründung begannen.quelle
git rebase/pull --rebase master
. Ich lande oft in diesem Zustand ... wegen eines Konflikts. Ich ändere eine Datei, ziehe, stelle meine Änderungen wieder her und der neue Patch ist leer, was Git's Gehirn verletzt, das dann beschließt, in diesen "Rebase-Modus" zu wechseln ...Ich bin vor kurzem in diesen Zustand gekommen. Nachdem ich Konflikte während einer Rebase gelöst hatte, habe ich meine Änderungen festgeschrieben, anstatt sie auszuführen
git rebase --continue
. Dies ergibt die gleichen Meldungen, die Sie beim Ausführen Ihrer Befehlegit status
und gesehen habengit rebase --continue
. Ich habe das Problem behoben, indem ichgit rebase --abort
die Rebase ausgeführt und dann erneut ausgeführt habe. Man könnte wahrscheinlich auch die Rebase überspringen, aber ich war mir nicht sicher, in welchem Zustand mich das zurücklassen würde.quelle
--abort
(+1) haben Sie jetzt--quit
( stackoverflow.com/a/41363262/6309 )Wenn
git rebase --abort
nicht funktioniert und Sie immer noch bekommenArt:
quelle
Ich mein Setup autorebase auf einem
git
git checkout
Andernfalls wird es automatisch zusammengeführt, wenn Sie zwischen Zweigen wechseln. Dies ist meiner Meinung nach die schlechteste Wahl als Standard.
Dies hat jedoch einen Nebeneffekt, wenn ich zu einem Zweig wechsle und dann jedes Mal , wenn ein Konflikt auftritt
git cherry-pick <commit-id>
, in diesem seltsamen Zustand lande .Ich muss das tatsächlich abbrechen
rebase
, aber zuerst behebe ich den Konflikt,git add /path/to/file
die Datei (eine andere sehr seltsame Art, den Konflikt in diesem Fall zu lösen?!), Dann mache ich agit commit -i /path/to/file
. Jetzt kann ich abbrechenrebase
:Der zweite
git commit .
scheint aus dem Abbruch zu kommen. Ich werde meine Antwort korrigieren, wenn ich herausfinde, dass ichrebase
früher abbrechen sollte .Das
--force
Einschalten ist erforderlich, wenn Sie andere Commits überspringen und beide Zweige nicht glatt sind (beiden fehlen Commits vom anderen).quelle
autosetupmerge
hat damit zu tun, wiegit pull
für neue Zweige konfiguriert wird.Eine weitere Option zum Abbrechen / Überspringen / Fortsetzen von IDE
quelle
Meins war ein Fehler, der von BitBucket aufgetaucht ist. Ran hat
git am --skip
es repariert .quelle