推Github时,Git push会挂起?

每次我尝试推送到GitHub时,Git推动挂起。 我正在使用Cygwin和Windows 7. Git在本地跟踪分支机构,提供状态,设置全局user.name和user.email,并允许提交function良好。

我还是新的,学习。

我inputgit pushgit push origin master或者git push -u origin master ,我得到的只是一个空行,要求我用ctl-c来得到提示信息。

ssh-keygen -t rsa -C "me@example.com"问我一个文件名并挂起

git push heroku master挂起

$ git status返回On branch master nothing to commit, working directory clean

$ git pull返回Already up to date

$ git remote -v返回:

 heroku git@heroku.com:myherokusite.git (fetch) heroku git@heroku.com: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 

更新:使用SSHurlgit@github.com:gitusername/gitrepo.git也挂起

git remote set-url origin https://github.com/gitusername/appname.git是正确的

更新:我可以看到在Windows任务pipe理器挂起时运行的git进程。

我试过了:

使用不同的networking连接位置

在https和ssh之间切换,并挂起

卸载混帐。 从https://code.google.com/p/msysgit/downloads/list重新安装

卸载混帐。 安装了Cygwin的git

卸载混帐。 安装Github的Windows GUI应用程序,它是我能够推动。 但是这个应用程序的function有限,迫使我离开我的Cygwin窗口进入另一个应用程序,然后迫使我进入一个Wi​​ndows命令提示符,以获得完整的function,我想我已经使用Cygwin逃脱了。

花了很多很多时间试图解决这个问题,之前工作无误,谢谢。

更新4/2014:我重build了我的整个机器赢7,Cygwin等,现在都工作正常

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

这对我有效。 提示出现可能需要3-5秒,只需input您的login凭据即可。

尝试GIT_CURL_VERBOSE = 1 git push …这可能是由于代理设置git会试图通过代理服务器到达github.com,代理没有响应。 使用GIT_CURL_VERBOSE = 1将显示IP地址和一些信息。 你可以比较ip地址和命令输出“host http://www.github.com”的ip地址。; 如果他们不同,那么你可以使https_proxy =“”然后再试一次。

尝试创build一个类似~/sshv.sh的脚本,它会告诉你什么是ssh:

 #!/bin/bash ssh -vvv "$@" 

然后调用你的git push

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

在我的情况下,这帮助我弄清楚,我正在使用SSH共享连接,需要closures,所以我杀了这些SSH进程,并开始工作。

它值得检查,如果你正在使用cygwin git或外部git(即github)。

如果whereis git只返回/cygdrive/c/Program Files (x86)/Git/cmd/git.exe或类似的最好安装cygwin git包,这解决了我的问题。

我有同样的问题,完全相同的症状…我正要在我的绝望重build我的整个系统))。

我甚至是天真地尝试git config --global core.askpass "git-gui--askpass"因为有人在这里提出,但它没有奏效… git push仍然冻结…

但后来我发现我的SSH代理出现了错误。 所以我重新启动了ssh-agent和… PROFIT

结论:总是检查你的SSH代理和SSHD服务器,当你有问题的SSH连接…我敢肯定,这是你的问题(这就是为什么它重新安装系统后工作)

尝试以下;

git config –global core.askpass“git-gui-askpass”

这将提示input凭证,如果凭证正确,则“推送”成功。

我只是想说我在我的AWS EC2实例上遇到了这个问题。 我试图从我的EC2实例本身,当我把它configuration为只允许来自负载平衡器的stream量。 我改变了规则,允许来自任何地方的HTTP,但它仍然没有解决问题。 然后我意识到这是因为我的安全组被configuration为不允许通过HTTPS从我的EC2实例出站stream量。 我没有允许HTTPS入站stream量使其正常工作,即使这可能是一个很好的策略,您可以使用HTTPS入站。

我想知道是不是我有同样的事情…

  1. 进入腻子
  2. 点击保存的会话中的“默认设置”。 点击加载
  3. 转到连接 – > SSH – >错误
  4. 在PuTTY的SSH-2'winadj'请求上设置“Chokes”(而不是Auto)
  5. 在树形视图中返回到会话(列表顶部)
  6. 点击Saved Sessions框中的“Default Settings”。 点击保存。

这个(几乎是逐字的)来自https://tortoisegit.org/issue/1880

当我的电脑的磁盘空间已满时,这发生在我身上。 删除一些文件并清空垃圾清理。

在我的情况下,问题是有一个过程,已locking我的钥匙串访问…

强制退出所有其他应用程序,以确保钥匙串访问没有locking在您的Mac上

为了完整性(有时像这样的问题并不像看起来那么复杂):

有一个不存在的远程存储库configuration也可能导致这种行为 – 我最近发现意外更改我的来源url为githu.com

推送大量文件时,通常会遇到自己遇到这个问题。

如果你能忍耐并让文件完成上传,你可能根本不需要做任何事情。 祝你好运 –

这发生在我身上,这里是我如何修复。 我用Cygwin和它挂起,所以我试图提交用户名/密码提交:

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

一旦我执行git push -u origin master并input用户名密码,它仍然挂起,但似乎提交给GitHub。

在dos提示符下使用相同的命令: git push -u origin master Git不会挂起。 所以在我的情况下,也许有关于CygWin的问题。

Interesting Posts