git pull schlägt fehl ‘Fehler: refs/stash zeigt nicht auf ein gültiges Objekt!’
Lesezeit: 4 Minuten
Jaime M.
git pull gibt diesen Fehler aus:
$ git pull
error: refs/stash does not point to a valid object!
error: refs/stash does not point to a valid object!
error: refs/stash does not point to a valid object!
error: refs/stash does not point to a valid object!
Current branch mybranch is up to date.
Ich habe diese Lösung ausprobiert, aber sie funktioniert bei mir nicht. Aktualisiert die Info:
$ GIT_TRACE=1 git pull
trace: exec: 'git-pull'
trace: run_command: 'git-pull'
trace: built-in: git 'rev-parse' '--git-dir'
trace: built-in: git 'rev-parse' '--is-bare-repository'
trace: built-in: git 'rev-parse' '--show-toplevel'
trace: built-in: git 'ls-files' '-u'
trace: built-in: git 'symbolic-ref' '-q' 'HEAD'
trace: built-in: git 'config' '--bool' 'branch.mybranch.rebase'
trace: built-in: git 'rev-parse' '-q' '--verify' 'HEAD'
trace: built-in: git 'rev-parse' '--verify' 'HEAD'
trace: built-in: git 'update-index' '-q' '--ignore-submodules' '--refresh'
trace: built-in: git 'diff-files' '--quiet' '--ignore-submodules'
trace: built-in: git 'diff-index' '--cached' '--quiet' '--ignore-submodules' 'HEAD' '--'
trace: built-in: git 'rev-parse' '-q' '--git-dir'
trace: built-in: git 'rev-parse' '-q' '--verify' 'refs/remotes/origin/mybranch'
trace: built-in: git 'merge-base' '53512e9ce3faa7c78b6d5d7ba1a63e56b5a42a11' 'refs/heads/mybranch'
trace: built-in: git 'rev-parse' '-q' '--verify' 'HEAD'
trace: built-in: git 'fetch' '--update-head-ok'
error: refs/stash does not point to a valid object!
trace: run_command: 'ssh' 'git@git-master' 'git-upload-pack '\''function-test'\'''
error: refs/stash does not point to a valid object!
trace: run_command: 'rev-list' '--verify-objects' '--stdin' '--not' '--all' '--quiet'
trace: run_command: 'rev-list' '--verify-objects' '--stdin' '--not' '--all'
trace: exec: 'git' 'rev-list' '--verify-objects' '--stdin' '--not' '--all'
trace: built-in: git 'rev-list' '--verify-objects' '--stdin' '--not' '--all'
error: refs/stash does not point to a valid object!
error: refs/stash does not point to a valid object!
trace:...
Nicht sicher, ob dies helfen wird. Versuche es git remote prune origin
– usha
18. Dezember 2013 um 16:49 Uhr
Bitte $ GIT_TRACE=1 git pull und aktualisieren Sie Ihre Frage mit der tatsächlichen Refspec, die zum Aufrufen verwendet wird git fetch (die erste Sache git pull tut).
– Kostix
18. Dezember 2013 um 17:26 Uhr
@Vimscha: $ git remote prune origin kehrt zurück error: refs/stash does not point to a valid object!
– Jaime M.
19. Dezember 2013 um 9:35 Uhr
git remote prune origin hat bei mir funktioniert!
– Blairg23
27. März 2016 um 10:24 Uhr
Am einfachsten wäre es, Ihren Vorrat vollständig zu entfernen. Beachten Sie, dass Sie zwei Dateien entfernen müssen – nicht eine Datei, wie in der verlinkten Lösung beschrieben:
rm .git/refs/stash .git/logs/refs/stash
rm .git/refs/… funktioniert bei mir, danke @mockinterface.
– Monteirobrena
7. April 2014 um 21:06 Uhr
musste laufen git stash danach und Fehler verschwunden
– Dmitri Gryazin
17. September 2015 um 13:41 Uhr
Am Ende habe ich eine Textsuche durch mein gesamtes .git-Verzeichnis durchgeführt und alle Verweise entfernt.
– Cordel
15. November 2017 um 22:18 Uhr
Ich bin unter Windows mit git-gui 0.21 und als ich zum Menü Repository -> Visualize master’s history ging, wurde der Fehler angezeigt, aber ich habe dies getan und die Meldung, dass es weg ist, wird hoffentlich nie wieder angezeigt
– tttony
10. August 2020 um 0:12 Uhr
Ich bin gerade auf diesen Fehler gestoßen. Zwei Server zogen einen Klon aus derselben Quelle; nur einer von ihnen gab diesen Fehler. Also habe ich tiefer gegraben.
„git clone“ würde nicht aus einem Repository klonen, das eine Referenz direkt unter „refs/“ hat, z. B. „refs/stash“, da verschiedene Validierungspfade unterschiedliche Dinge für einen solchen Refnamen tun. Lockern Sie die Überprüfung auf der Clientseite, um eine solche Referenz zuzulassen.
Ich fand heraus, dass einer der Server Git 1.7.1 und der andere Git 1.8.5.6 verwendete.
Es ist erwähnenswert, dass die fetch Der Befehl würde ebenfalls fehlschlagen, obwohl dies in den obigen Versionshinweisen nicht ausdrücklich erwähnt wird.
In meinem speziellen Fall habe ich auch festgestellt, dass der Server mit Git 1.7.1 tatsächlich ist hatte das spätere Git auch, aber es war später in der PATH Umgebungsvariable.
Es kann von Interesse sein, dass, wenn ich lief git fetch Mit der späteren Version funktionierte der Klon danach auch mit der älteren Version.
Die einfachste Lösung ist einfach zu Aktualisieren Sie Git auf Version 1.8.5.5 oder höher.
Oder lassen Sie das Stash natürlich fallen, aber dann wird Ihr Klon wieder kaputt gehen, wenn jemand das nächste Mal ein Stash macht.
Ich habe alle empfohlenen Lösungen ausprobiert, aber nichts hat es behoben. Was es am Ende für mich behoben hat, war ziemlich einfach:
# Made a small change in a code-file with vim
# stash'ed it then
git stash
# got it back
git stash pop
# reverted my small change
git checkout .
# finish, no more error
git pull
Das funktioniert möglicherweise nicht für alle, und es funktioniert möglicherweise nicht, ohne andere Korrekturen zu befolgen, die zuvor hier vorgenommen wurden. Aber es ist einen Versuch wert.
Ich hatte ein ähnliches Problem, aber dabei go build oder go mod tidy oder go run. Alle Befehle gaben mir die gleichen Fehler,
‘Fehler: refs/stash zeigt nicht auf ein gültiges Objekt!’
Ich habe viele Dinge wie unten versucht.
git remote prune origin
git stash
rm .git/refs/stash .git/logs/refs/stash
Bei mir hat nichts funktioniert. Endlich ich gelöscht der gesamte Cache, der in meinem System unter Pfad vorhanden ist $GOPATH/go/pkg/mod/cache/und ich konnte die Probleme lösen.
14293800cookie-checkgit pull schlägt fehl ‘Fehler: refs/stash zeigt nicht auf ein gültiges Objekt!’yes
Nicht sicher, ob dies helfen wird. Versuche es
git remote prune origin
– usha
18. Dezember 2013 um 16:49 Uhr
Bitte
$ GIT_TRACE=1 git pull
und aktualisieren Sie Ihre Frage mit der tatsächlichen Refspec, die zum Aufrufen verwendet wirdgit fetch
(die erste Sachegit pull
tut).– Kostix
18. Dezember 2013 um 17:26 Uhr
@Vimscha:
$ git remote prune origin
kehrt zurückerror: refs/stash does not point to a valid object!
– Jaime M.
19. Dezember 2013 um 9:35 Uhr
git remote prune origin
hat bei mir funktioniert!– Blairg23
27. März 2016 um 10:24 Uhr