2013-06-21 215 views
3

我試圖拉動使用msysgit 1.8.1(與1.7.10和.11一起嘗試,具有相同的結果),並總是得到一個錯誤,知道如何調試/解決:Git拉 - 致命:讀取錯誤:無效的參數

E:\java\myproject>git pull 
Enter passphrase for key '/E/my-private-key': 
remote: Counting objects: 200, done. 
remote: Compressing objects: 100% (97/97), done. 
rRemote: Total 115 (delta 66), reused 0 (delta 0) 
Receiving objects: 100% (115/115), 12.25 KiB, done. 
Resolving deltas: 100% (66/66), completed with 34 local objects. 
From ssh://myserver:12345/myproject 
    50e90d7..d24b154 release-4.5 -> origin/release-4.5 
    58625d6..960fcc6 develop -> origin/develop 
* [new branch]  release/4.6 -> origin/release/4.6 
* [new tag]   4.6-rc-1 -> 4.6-rc-1 
Fetching submodule src/jgit/main 
fatal: read error: Invalid argument 

E:\java\myproject> 

之間

Fetching submodule src/jgit/main 

fatal: read error: Invalid argument 

,大約需要5分鐘(超時?)。

奇怪的是,一行以rRemote開頭 - msysgit中的一個錯誤?

+0

你每次都得到'不在已知主機列表中嗎?不應該將它添加到'.ssh/hosts'?你的'.ssh'文件夾是可寫的嗎? –

+0

@DavidSchwartz,適用於Windows的Git(OP錯誤地稱爲「msysgit」)不使用Cygwin,也不與「cygwin.dll」鏈接。 – kostix

回答

1

克隆/從ssh://myserver:12345/myproject拉動效果很好。

但是從記錄在該回購的.gitmodules文件中的url中獲取子模塊「src/jgit/main」沒有。

檢查上述網址,看看是否另一個協議(例如https,而不是ssh)可能工作(同樣,對於子模塊的url,正如您剛纔拉回的.gitmodules文件中指定的那樣)。

1

我發現原因:子模塊src/jgit/main有兩個外部。 origin指向官方的jgit倉庫,另一個指向我們的jgit倉庫的克隆。刪除origin並將另一個重命名爲origin後,它可以正常工作。看起來我從官方的jgit倉庫中遇到問題。

+0

+1。這證實了我自己的答案有關子模塊url的問題。 – VonC

相關問題