Als ich versuchte zu rennen
git Push Origin master --force
Ich bin gerade gekommen
Counting objects: 2649, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (1280/1280), done.
error: RPC failed; result=22, HTTP code = 413 | 116 KiB/s
fatal: The remote end hung up unexpectedly
Writing objects: 100% (2504/2504), 449.61 MiB | 4.19 MiB/s, done.
Total 2504 (delta 1309), reused 2242 (delta 1216)
fatal: The remote end hung up unexpectedly
Everything up-to-date
Ist es etwas damit zu tun, nicht sicher zu sein? Ich habe versucht, einen öffentlichen Schlüssel wie in der Antwort für Fatal zu erstellen: Das entfernte Ende hat unerwartet aufgehängt und es erneut ausgeführt, aber es funktioniert immer noch nicht. Benutze ich den Schlüssel eigentlich nicht? Wenn ja, wie verwende ich es?
Dies sieht ähnlich wie aus. Wie bekomme ich github als Standard für ssh und nicht für neue Repositorys (https) .
$ git remote add Origin [email protected]:username/project.git
Das Problem liegt in den git/https-Puffereinstellungen. Um dieses Problem zu lösen (aus Git scheitert beim Push-Commit an github )
git config http.postBuffer 524288000
Führen Sie den Befehl erneut aus
Ursache: Die Standarddateipostgröße für Git wurde überschritten.
Lösung:
Navigieren Sie zum Repo.
Führen Sie den folgenden Befehl aus, um den Puffer nach der Navigation zum Repository auf 500 MB zu erhöhen:
git config http.postBuffer 524288000
Sie könnten einen Fehler wie diesen erhalten
fehler: Konfigdatei konnte nicht gesperrt werden .git/config: Keine solche Datei oder Verzeichnis
das liegt daran, dass Sie keine lokale .git/config
-Datei haben. Sie können sie mit diesem Befehl zum Laufen bringen
git config --global http.postBuffer 524288000
Andere Lösungen haben in meinem Fall nicht funktioniert, eine Müllsammlung zu erledigen, hat es für mich behoben:
git gc --aggressive
Dieser Fehler kann auch durch fehlende Schreibberechtigungen für das Repository ausgelöst werden.
Mein konkreter Fall lief so ab:
root
-Benutzer meines Servers (über SSH) erstellt.git
linux-Benutzer erstellt, der alle git-bezogenen Aktionen verwalten soll.root
erstellt wurde und der Benutzer git
einfach nicht über die Dateiberechtigungen verfügte, um etwas in das Repository zu schreiben.Sie haben wahrscheinlich das Repository in einem vorhandenen Repository geklont. Um das Problem zu lösen, können Sie das Repository einfach in ein anderes Verzeichnis klonen und die Änderungen in diesem neuen Verzeichnis replizieren und anschließend den Push ausführen.
In unserem Fall war das Problem ein Klon, der eine .git/config
-Datei schrieb, die einen URL-Eintrag enthielt, der eine schreibgeschützte Zugriffsmethode war. Das Ändern der URL von der ://
-Methode in die @
-Methode hat das Problem behoben.
Das Ausführen von git remote -v
beleuchtete das Problem.
Im Gegensatz zu einer der anderen Antworten - ich hatte das Problem bei Push mit ssh - wechselte ich zu https und es wurde behoben.
git remote remove Origin
git remote add Origin https://github..com/user/repo
git Push --set-upstream Origin master
Wenn Sie git für Windows verwenden (und dies wahrscheinlich auf einem Windows-Computer ist), und keine der anderen Korrekturen, die hier für Sie funktionierten, gehen Sie zu https://github.com/git-. for-windows/git/Releases und Abrufen einer Version ab oder nach Version 2.4.5. Ich habe das Problem behoben.
Eine weitere Ergänzung, da ich auf diesen Fehler einen anderen Weg gefunden habe und Google mich hierher gebracht habe.
Mein Problem war ein nicht übereinstimmender Fall. ein camelCase und einer nicht. Anscheinend hält GIT Sie davon ab, ohne zu sagen, warum. Wenn sich Ihre Niederlassungen nur in der Großschreibung von der Ferne unterscheiden, versuchen Sie, diese zu ändern, um identisch zu sein.
Siehe: Git: 'Master kann nach dem Zusammenführen nicht in eine Verzweigung aufgelöst werden
Dies kann nach einer Aktualisierung Ihrer OSX-Plattform auftreten.
Öffnen Sie das Terminal und navigieren Sie zu Ihrem .ssh-Ordner. Geben Sie ssh-add -K ~/.ssh/id_rsa
ein.
Ich habe diese Fehlermeldung erhalten, als ich in .ssh ein falsches Schlüsselpaar hatte. Das Hinzufügen des pubkeys zu github (in den Einstellungen) hat dieses Problem für mich behoben.
Scheint, als könnte es eines von tausend Dingen sein.
Für mich habe ich Master zuerst geschoben und entwickelt (Master hatte keine Änderungen) über SourceTree. Das zu ändern, um zu entwickeln, funktionierte nur.
Ich hatte zufällig den gleichen Fehler beim Ziehen.
Ich habe den Trick "http.postBuffer" gemacht. Es wurde gelöst, aber als ich Push ausführen wollte, ist der Fehler erneut aufgetreten.
Was hat mein Problem gelöst?
1. Es wurde in einen anderen Ordner mit einer anderen virtuellen Maschine geklont. (Linux).
2. Ich habe meine Änderungen vorgenommen.
3. Ich habe es mit der ursprünglichen virtuellen Maschine geschoben, wo ich anfänglich nicht schieben konnte. (Windows)
Ich habe das gleiche Problem. Ich habe auf der git-Webseite festgestellt, dass die SSH-Klon-URL die nächste Struktur hat:
[email protected]:user/project.git
Ich könnte mein Problem lösen, indem ich das ":" durch "/" wie folgt ändere:
[email protected]/user/project.git
kann dies hilfreich sein.
Ich hatte einen ähnlichen Fehler beim Hochladen eines großen Repos, "fatal: Das Remote-Ende hat unerwartet aufgehängt", ohne weitere Details.
Nach langer Recherche habe ich Folgendes getan:
Schließlich kam mir der Gedanke, dass ich möglicherweise einen älteren git-Client verwende, da ich keine zusätzlichen Fehlermeldungen sah. _ Git-Client auf den neuesten Stand (2.20.1) und voila aktualisiert. der fehler ist weg!
PLESK Nginx und GIT Ich bekam diesen Fehler auf plesk git und während ich ein großes Repo mit (wer weiß was) drückte, gab es mir diesen Fehler mit HTTP-Code 413 und ich sah in folgenden Server war Plesk und es hatte nginx läuft genauso wie Apache2, also habe ich in Protokollen nachgesehen und den Fehler in nginx-Protokollen gefunden
Folgen Sie diesem Link , um es plesk zu ermöglichen, die Konfiguration mit größerem Datei-Upload wiederherzustellen.
Ich habe den PHP-Teil für git übersprungen
Danach funktionierte Push fehlerfrei.
Dies kann auch passieren, wenn eines der Commits, die Sie übertragen, fehlerhaft ist.
Ich hatte (unwissentlich) ein Commit mit einem fehlerhaften E-Mail-Feld des Autors, aber alles, was ich bekam, war diese vage remote end hung up
-Fehlermeldung. Ich war in der Lage, andere Zweige zu pushen, nur nicht diesen einen Zweig, also begann ich, nacheinander Commits aus dem "schlechten" Zweig zu pushen, bis ich schließlich landete bei:
Pushing to [email protected]:directangular/Unicorn.git
Counting objects: 100% (9/9), done.
Delta compression using up to 20 threads
Writing objects: 100% (5/5), 549 bytes | 549.00 KiB/s, done.
Total 5 (delta 4), reused 0 (delta 0)
remote: error: object 74c7584ff0b93591c19d3a3c19695889dd2274d2: badEmail: invalid author/committer line - bad email
remote: fatal: fsck error in packed object
error: remote unpack failed: index-pack abnormal exit
To github.com:directangular/Unicorn.git
! [remote rejected] pizzafeast -> pizzafeast (failed)
error: failed to Push some refs to '[email protected]:directangular/Unicorn.git'
Es sieht also so aus, als würde der remote end hung up unexpectedly
-Fehler die eigentliche Fehlermeldung "verschlucken". Dies ist wahrscheinlich eine Art fehlerhafter Festschreibung, wie ich sie hier habe.
Nachdem ich die fehlerhafte E-Mail behoben hatte, konnte ich ganz gut pushen.
Ich habe diese Fehlermeldung erhalten, als ich meinen Namen der Remote-Niederlassung falsch geschrieben hatte
1) CD zum Projektverzeichnis
2) git status
3) git checkout -f HEAD
4) Bestätigen Sie den Erfolg, indem Sie den Master erneut herunterziehen, um sicherzustellen, dass Sie auf dem neuesten Stand sind, wenn Ihr Repo unvollständig aussieht
Dies funktioniert, wenn Sie den fraglichen Fehler vom Git von Visual Studio erhalten, wenn Sie ein Repo aus Bitbucket klonen
Es scheint fast sinnlos, eine Antwort hinzuzufügen, aber ich habe mich lange Zeit darum gekämpft, als ich endlich entdeckte, dass es sich bei Visual Studio Online um einen sporadischen Ausfall handelt. Das wurde deutlich, als VS ständig um Creds bat und die VSO-Website manchmal 500 Punkte gab.
Counting objects: 138816, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (38049/38049), done.
error: unable to rewind rpc post data - try increasing http.postBuffer
error: RPC failed; curl 56 SSL read: error:00000000:lib(0):func(0):reason(0), errno 10054
The remote end hung up unexpectedly/138816), 33.30 MiB | 3.00 KiB/s
Writing objects: 100% (138816/138816), 50.21 MiB | 3.00 KiB/s, done.
Total 138816 (delta 100197), reused 134574 (delta 96515)
fatal: The remote end hung up unexpectedly
Everything up-to-date
Ich setze meinen HTTP-Post-Puffer danach wieder auf 2 MB, da ich glaube, dass er mit vielen kleineren Posts besser funktioniert.
Luke
Ich konnte dieses Problem mit Git Shell umgehen.
Jedes Repository in github.com enthält HTTPS/SSH/Subversion-URLs, die Sie zum Herunterladen mit Shell verwenden können. Siehe hier: http://prntscr.com/8ydguv .
Basierend auf den letzten Änderungen von GitHub scheint SSH die beste Methode zu sein.
In der Shell zu verwendender Befehl:
git clone "URL of repo goes here w/ no quotes"
Tun Sie dies, um den von Ihnen verwendeten Schlüssel anzuzeigen: Ssh -vT [email protected]
Stellen Sie dann sicher, dass Sie in Ihrem Build diesen Start am Start haben Eval "$ (ssh-agent -s)" Ssh-add ~/.ssh/id_rsa