2016-07-19 5 views
5

Ich benutze Git 2.9 unter Windows. Als ich ein Demo-Git-Training mit Git-Daemon erstellte, traf ich SO_KEEPALIVE-Fehler.Git Daemon Hang SO_KEEPALIVE

@Server 
$ git daemon --base-path=. --enable=receive-pack --verbose 
[18608] Ready to rumble 
[18108] Connection from 127.0.0.1:61111 
[18108] unable to set SO_KEEPALIVE on socket: No error 
[18108] Extended attributes (16 bytes) exist <host=127.0.0.1> 
[18108] Request receive-pack for '/hello-world.git' 

@ACommitter 
$ git push -u origin "john--01--create-app-saying-hello" 

Warum passiert das?

+0

Hat Schiebe-/Abrufen von Arbeit gegen die laufende Instanz des 'git-daemon'? Für mich sieht der Fehler harmlos aus: 'SO_KEEPALIVE' aktiviert Keepalives auf TCP-Ebene, aber mit den Standardeinstellungen, die die meisten heutzutage verwendeten Betriebssysteme haben, verwendet dieser Mechanismus wahnsinnig große Timeouts (wie etwa zwei Stunden), um Keepalive-Pakete zu senden. IOW, diese Einstellung soll persistente * idle * Verbindungen am Leben erhalten, und dies ist wirklich nicht der Anwendungsfall für Git, dessen Abruf-/Push-Sitzungen im Verkehr kurzlebig und intensiv sind. Also würde ich sagen, dass es in Ordnung ist, diesen Fehler zu ignorieren. – kostix

+1

Oh, ich sehe das Wort "Hang" in der Zusammenfassung der Frage. OK, wenn es hängt, könnte das ein langjähriger Fehler in der GfW sein, den Sie versuchen können [zu umgehen] (http://stackoverflow.com/a/24461876/720999). Nun, ich war mir sicher, dass es seither irgendwie repariert wurde, aber vielleicht war es das wirklich nicht. – kostix

+0

Wenn das nicht hilft, können Sie [MCVE] (http://stackoverflow.com/help/mcve) in einer neuen Ausgabe [im GfW-Tracker] (https://github.com/git -for-windows/git/Probleme). – kostix

Antwort