【发布时间】:2011-05-12 10:05:26
【问题描述】:
我正在尝试通过 SSH 而不是普通的 https 或任何默认值推送到存储库。此过程需要用户名和密码而不是 ssh 密钥。但是,当我尝试这样做时,这总是失败:
Owner@DESKTOP /w/programming/wreckcreations-site/dev (dev)
$ git push -vvv --all ssh://*name*@*site*/~/html/dev2
Pushing to ssh://*name*@*site*/~/html/dev2
fatal: The remote end hung up unexpectedly
认为这是一个 SSH 问题,我尝试通过 SSH 连接到我的本地服务器
Owner@DESKTOP /w/programming/wreckcreations-site/dev (dev)
$ "`echo $GIT_SSH`" 192.168.2.2
login as: root
root@192.168.2.2's password:
Last login: Thu Nov 18 19:36:58 2010 from 192.168.2.4
←]0;root@system:~[root@system ~]# exit
logout
←[H←[2J
Owner@DESKTOP /w/programming/wreckcreations-site/dev (dev)
$ git push -vvv --all ssh://root@192.168.2.2/~/somedir
Pushing to ssh://root@192.168.2.2/~/somedir
fatal: The remote end hung up unexpectedly
同样的错误信息...所以我查看了盒子上的 /var/log/secure
Nov 18 21:15:06 system sshd[28460]: Accepted password for root from 192.168.2.4 port 2788 ssh2
Nov 18 21:15:06 system sshd[28460]: pam_unix(sshd:session): session opened for user root by (uid=0)
Nov 18 21:15:11 system sshd[28460]: pam_unix(sshd:session): session closed for user root
Nov 18 21:17:35 system sshd[28618]: Received disconnect from 192.168.2.4: 13: Unable to authenticate
前三行来自plink,最后一行来自git。每次我尝试使用 git push 时都可以重复最后一行。这没有意义
如果我假设我的远程主机收到相同的错误消息,为什么 git 不提交我的用户名并断开连接?我以前从未见过这种错误,所以我真的很困惑。
需要注意的是,这是一个使用 msysgit 的 Windows XP 机器,两个远程服务器都是 Linux。
有什么建议吗?
【问题讨论】:
-
ssh://*name*@*site*/~/html/dev2似乎没有包含密码... -
@Alison
ssh://*name*:*pass*@*site*也不起作用。从我看到有人让它工作的一两个站点,它要求输入密码。