Ich verwende Dropbox
zum Synchronisieren eines git
Repositorys, aber jetzt, wenn ich es versuche und push
eine Fehlermeldung erhalte:
fatal: Reference has invalid format: 'refs/heads/master (MacBook-Pro's conflicted copy 2012-10-07)'
Es scheint also, dass Dropbox einen Konflikt erkannt und eine Kopie erstellt hat. Ok, kein Problem, also habe ich die in Konflikt stehende Datei gelöscht. Trotzdem wird der obige Git-Fehler angezeigt.
$ git checkout master
M index.html
Already on 'master'
$ git add .
$ git commit -a -m "Cleanup repo"
[master ff6f817] Cleanup repo
1 file changed, 5 insertions(+), 5 deletions(-)
$ git push
fatal: Reference has invalid format: 'refs/heads/master (MacBook-Pro's conflicted copy 2012-10-07)'
The remote end hung up unexpectedly`
Wie kann ich das beheben? Vielen Dank.
find . -type f -name "* conflicted copy*" -delete
Die in Konflikt stehende Datei könnte sich an mehreren Stellen befinden, die ich untersuchen würde:
Oder Sie suchen überall im
.git
Unterverzeichnis:find . -name '*conflicted*'
Oder listen Sie andernfalls die aktiven Zweige mit auf
git branch -a
und löschen Siegit branch -d
verdächtige Elemente ( ).quelle
.git
. Ich ging durch und löschte sie alle, und es ist behoben. Vielen Dank.find . -name '*conflicted*'
(Bearbeiten: Format)find
ich eine einzelne widersprüchliche Datei gefunden und das Problem manuell mit zwei behobenmv
. Dies langsam und schrittweise zu tun, ist der sicherste Weg.Dies passiert auch unserem Team, wenn mein Kollege seine Änderungen vorantreibt und den PC herunterfährt, bevor Dropbox aktualisiert wird.
Ich habe es so einfach gelöst.
Gerade die widersprüchliche Kopie gelöscht. (XXXXs widersprüchliche Kopie JJJJ-MM-TT)
Und ziehen Sie es normal.
Beachten Sie, dass mein Kollege die Änderungen vor dem Durcheinander hatte. Und er schiebt seine Änderungen wieder. Diesmal kein Herunterfahren. :) :)
quelle
Ich konnte alle in Konflikt stehenden Dateien aus meinem .git-Ordner löschen, erhielt jedoch weiterhin Fehler bei Dateien, die nicht mehr vorhanden waren.
Die Lösung für mich bestand darin,
.git/refs/packed_refs
Zeilen zu öffnen und zu löschen, die den Text "Konflikt" enthielten.quelle
Für mich war es ein Fehler:
fatal: Reference has invalid format: 'refs/tags/r0.2:3'
Sie können zur Datei /.git/packed_refs gehen und die Zeile für löschen
refs/tags/r0.2:3
Dann fing es an zu arbeiten. Aber warum es überhaupt passiert ist, weiß ich nicht.
quelle
Versuchen Sie es
git checkout master
zuerst, um auf den gesunden, gut benannten Zweig zu gelangen.quelle
git push origin master
und auch die Ausgabe vongit branch -a
bitte einfügen ?git branch -a
führt zu genau diesem Fehler!Ich habe den gleichen Fehler bekommen
für den folgenden Befehl
Dann suchte ich mit dem Befehl nach einem fehlerhaften Namen (Zweigstellenname gefolgt von (1))
Und es zeigte das folgende Ergebnis
Welches ist eine duplizierte Version von somebranch IMO. Also entfernte ich dies, indem ich den Befehl find ausführte, gefolgt von delete
Dann wird der Verzweigungsbefehl erfolgreich ausgeführt
quelle
Ich bin auf den ähnlichen Fehler gestoßen wie
Durch einfaches Löschen der Datei
.git/refs/heads/user-search-api (Sithu's conflicted copy 2016-01-08)
im Remote-Dropbox-Repository wurde das Problem behoben.quelle