2011-04-14 206 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