2011-04-14 129 views
2

从远程服务器克隆Git仓库后,我在本地副本上进行了一些更改。我想这些变化逼退到远程服务器,但我得到的是没有得到有用的信息的错误消息:Git远程服务器推送失败

fatal: read error: Invalid argument 

(诗的服务器和本地回购两者都在Windows环境中运行。 )

我曾尝试:

git push 
git push origin 
git push origin master 

通过GIT的GUI版本甲推产生同样的有用的错误消息。

编辑 设置环境变量GIT_TRACE = 1后,我得到稍微输出:

C:\repo>git push --verbose 
setup: git_dir: .git 
setup: worktree: C:/repo 
setup: cwd: C:/repo 
setup: prefix: (null) 
trace: built-in: git 'push' '--verbose' 
Pushing to git://MYSERVER.MYCOMPANY.net/repo 
fatal: read error: Invalid argument 

有什么想法?

回答

2

看起来像你运行在一个普通的cmd.exe终端而不是msysgit的bash终端。很多git依赖于shell脚本;因此,您需要运行在bash终端而不是cmd.exe。

0

你确定服务器配置正确,有你的SSH密钥等吗?您是否在家酿造Git服务器或者像git-hub/assembla一样?

+0

家酿。 “git.exe daemon --verbose --export-all --base-path = C:”。在Windows 2003上作为服务运行。到目前为止,这对于“git clone”,“git pull”非常合适。它只是错误信息失败的“git push”。 – 2011-04-14 20:14:05

+0

默认情况下,git-daemon不支持写访问。我相信它可以启用,但由于它不支持身份验证,所以不推荐。 – Arrowmaster 2011-04-15 00:05:45

+0

@Arrowmaster:那么如何建立一个人们推动的回购? – 2011-04-18 16:53:09