it-swarm.com.de

Git Push hängt auf Github?

Git Push hängt jedes Mal, wenn ich versuche, auf Github zu schieben. Ich verwende Cygwin und Windows 7. Mit Git-Funktionen lassen sich Verzweigungen lokal nachverfolgen, Status angeben, globale benutzer.name und benutzer.email setzen und Commits zulassen. 

Ich bin noch neu und lerne.

Ich gebe git Push, git Push Origin master oder git Push -u Origin master ein und bekomme nichts als eine leere Zeile, die mich zu ctl-c zwingt, um die Aufforderung zurückzuholen. 

ssh-keygen -t rsa -C "[email protected]" fragt mich nach einem Dateinamen und hängt

git Push heroku master hängt

$ git status gibt On branch master nothing to commit, working directory clean zurück

$ git pull gibt Already up to date zurück

$ git remote -v gibt zurück:

heroku  [email protected]:myherokusite.git (fetch)

heroku  [email protected]:myherokusite.git (Push) Origin  

https://github.com/gitusername/appname.git (fetch) Origin  

https://github.com/gitusername/appname.git (Push)

or the correct ssh remote settings are returned when trying this with ssh

Updated: Die Verwendung der SSH-URL [email protected]:gitusername/gitrepo.git hängt auch

git remote set-url Origin https://github.com/gitusername/appname.git ist korrekt

Updated: Ich sehe die git-Prozesse, die im Windows Task Manager ausgeführt werden, während er hängen bleibt.

Ich habe es versucht:

Verwenden verschiedener Standorte für die Internetverbindung

zwischen https und ssh wechseln und es hängt

Deinstallierter Git. Neu installiert von: https://code.google.com/p/msysgit/downloads/list

Deinstallierter Git. Installierter Cygwin-Idiot

Deinstallierter Git. Installierte Github für Windows-GUI-App und ich konnte Push. Diese App hat jedoch eine eingeschränkte Funktionalität, zwingt mich aus meinem Cygwin-Fenster heraus in eine andere App, die mich dann in einen Windows-Befehl auffordert, vollständige Funktionalität zu erhalten, von der ich dachte, dass ich durch die Verwendung von Cygwin entkommen war. 

Ich habe viele, viele Stunden damit verbracht, das Problem zu lösen, es hat einwandfrei funktioniert, danke.

UPDATE 4/2014: Ich baute meine gesamte Maschine Win 7, Cygwin usw. neu auf und alles funktioniert jetzt einwandfrei

53
Matt Singer
git config --global core.askpass "git-gui--askpass"

Das hat bei mir funktioniert. Es kann 3-5 Sekunden dauern, bis die Eingabeaufforderung erscheint. Geben Sie einfach Ihre Anmeldeinformationen ein und Sie können fortfahren.

56
forloop

Versuchen Sie es mit GIT_CURL_VERBOSE = 1 git Push ... Es kann vorkommen, dass git versucht, github.com über den Proxy-Server zu erreichen, und der Proxy antwortet nicht. Bei GIT_CURL_VERBOSE = 1 werden die IP-Adresse und einige Informationen angezeigt. Sie können die IP-Adresse mit der Befehlsausgabe "Host www.github.com" vergleichen. Wenn sie unterschiedlich sind, können Sie https_proxy = "" machen und es erneut versuchen. 

22

Versuchen Sie, ein Skript wie ~/sshv.sh zu erstellen, das Ihnen zeigt, was ssh vorhat:

#!/bin/bash
ssh -vvv "[email protected]"

Erlaube die Ausführung der ~/sshv.sh-Datei für den Besitzer der Datei:

chmod u+x ~/sshv.sh

Dann rufen Sie Ihren git Push mit auf:

GIT_SSH=~/sshv.sh git Push ...

In meinem Fall half mir das, herauszufinden, dass ich gemeinsam genutzte SSH-Verbindungen verwendete, die geschlossen werden mussten. Deshalb habe ich die SSH-Prozesse abgebrochen und es begann zu funktionieren.

22
Matt Montag

Ich hatte das gleiche Problem mit absolut gleichen Symptomen. 

Ich war sogar so naiv, git config --global core.askpass "git-gui--askpass" zu versuchen, wie manche Leute hier vorschlagen, aber es hat nicht funktioniert… git Push war immer noch eingefroren… 

Aber dann habe ich herausgefunden, dass ein Fehler bei meinem SSH-Agenten aufgetreten ist. Also habe ich den ssh-agent neu gestartet und ... PROFIT

Fazit: Überprüfen Sie immer Ihren SSH-Agenten und SSHD-Server, wenn Sie Probleme mit der SSH-Verbindung haben. Ich bin mir ziemlich sicher, dass dies Ihr Problem war.

8
Drew

Es lohnt sich zu überprüfen, ob Sie Cygwin oder einen externen Git (dh Github) verwenden.

Wenn whereis git nur /cygdrive/c/Program Files (x86)/Git/cmd/git.exe oder ähnliches ausgibt, um das Paket cygwin git zu installieren, wurde das Problem für mich gelöst.

6
Sam

Versuche Folgendes;

git config --global core.askpass "git-gui - askpass"

Dies wird zur Eingabe von Anmeldeinformationen auffordern und "Push" ist erfolgreich, wenn die Anmeldeinformationen korrekt sind.

4

Ich dachte, mein Git-Windows-Bildschirm wurde angeschlagen, aber tatsächlich erscheint ein Hinweis in Prompt dahinter. Suchen Sie nach, geben Sie Ihre Anmeldeinformationen ein und das war's.

3
Thakur Karthik

Ich hatte das gleiche Problem. Hör auf, dir Sorgen zu machen und endlos komplizierte Lösungen zu suchen. Entferne einfach git und installiere es erneut.

Sudo apt-get purge git
Sudo apt-get autoremove
Sudo apt-get install git

Das ist es. Es sollte jetzt klappen

2
GustavZ

Dies trat für mich auf, wenn der Festplattenspeicher meines Computers voll war. Löschen Sie einige Dateien und leeren Sie den Papierkorb, um das Problem zu beheben.

1
spsaucier

In meinem Fall bestand das Problem darin, dass ein Zugriff auf meinen Schlüsselbund gesperrt war ... 

Erzwingen Sie das Beenden aller anderen Apps, um sicherzustellen, dass der Zugriff auf den Schlüsselbund auf Ihrem Mac nicht gesperrt ist

1
vinzzz

Ich wollte nur sagen, dass ich dieses Problem in meinen AWS EC2-Instanzen habe. Ich habe versucht, Push von meiner EC2-Instanz selbst auszuführen, wenn ich konfiguriert habe, dass nur Datenverkehr vom Load Balancer zugelassen wird. Ich habe die Regel geändert, um HTTP von überall zuzulassen, aber das Problem wurde immer noch nicht behoben. Dann wurde mir klar, dass meine Sicherheitsgruppen so konfiguriert sind, dass abgehender Datenverkehr von meinen EC2-Instanzen über HTTPS nicht zugelassen wird. Ich habe keinen eingehenden HTTPS-Verkehr zulassen, damit es funktioniert, obwohl es wahrscheinlich eine gute Richtlinie für Sie ist, dass HTTPS eingehend verfügbar ist. 

1
jdogg

Der Vollständigkeit halber (manchmal sind Probleme wie diese nicht so kompliziert, wie es scheint):

Wenn ein nicht vorhandenes Remote-Repository konfiguriert ist, kann dies ebenfalls zu diesem Verhalten führen. Ich habe es kürzlich herausgefunden, als ich versehentlich die URL meines Origin in githu.com geändert habe.

1

Ich hatte auch ein Problem, bei dem git im Bereich "Writing objects" unter Windows 7 hängt (mit msysgit, dem Standard-Windows-Client von git). Dies ist der erste Treffer, den ich in google erhalten habe.

git config --global core.askpass "git-gui--askpass" hat leider nicht funktioniert, aber nach einiger Recherche fand ich den Tipp auf Git Push hält an "Writing Objects: 100%" um git config –global sendpack.sideband false zu verwenden, was einwandfrei funktioniert.

Ich kann endlich wieder von der Kommandozeile aus pushen!

0
bas

Ich frage mich, ob es das gleiche ist, das ich hatte ...

  1. Gehen Sie in PuTTY
  2. Klicken Sie in den gespeicherten Sitzungen auf "Standardeinstellungen". Klicken Sie auf Laden
  3. Gehen Sie zu Verbindung -> SSH -> Fehler
  4. Setzen Sie "Chokes auf PuTTYs SSH-2" winadj "-Anfragen auf" Ein "(anstelle von" Auto ").
  5. Gehe zurück zur Sitzung in der Baumansicht (ganz oben in der Liste)
  6. Klicken Sie im Feld Gespeicherte Sitzungen auf "Standardeinstellungen". Klicken Sie auf Speichern.

Dieses (fast wörtlich) kommt aus:

https://tortoisegit.org/issue/1880

0
Dann
  1. Hatte das gleiche Problem. War ein wenig verwirrt, aber die Sache war, dass ich einen git init --bare auf root machen musste, das bedeutet, dass Sie nicht Push können, weil Sie keine Rechte haben. Stattdessen einen neuen User machen oder in meinem Fall habe ich Pi User verwendet und dort git init --bare gemacht, was dann später funktionierte. 

  2. git config --global http.postBuffer 524288000

Maximale Größe des Puffers, der von intelligenten HTTP-Transporten beim POST von Daten an das ferne System verwendet wird, in Byte. Für Anforderungen, die größer als dieser Puffer sind, werden HTTP/1.1 und Transfer-Encoding: chunked verwendet, um zu vermeiden, dass eine umfangreiche Packdatei lokal erstellt wird. Der Standardwert ist 1 MiB, was für die meisten Anforderungen ausreichend ist.

0
the_Begin

Ich hatte zwei Repositories, von denen eines gut funktionierte. Also habe ich ihren .git/config verglichen. Der Nichtarbeitende hatte am Ende:

[http]
    sslVerify = false

Die Arbeitsgruppe hatte stattdessen:

[credential]
    helper = store

Durch das Ändern von .git/config wurde das Problem behoben.

0
AlwaysLearning

Normalerweise stelle ich fest, dass dieses Problem auftritt, wenn eine große Anzahl von Dateien übertragen wird.

Wenn Sie geduldig sein können und das Hochladen der Dateien abschließen können, müssen Sie möglicherweise überhaupt nichts tun. Viel Glück - 

0
Po Rith