2010-05-03 59 views
1

我是剛開始使用Git的小公司的CM人員。我們有兩個Git存儲庫,當前託管在我們的多用途Windows服務器的Windows機器上。但是,我們只需在名爲「Callisto」的Ubuntu Linux服務器上爲我們的CM軟件設置專用服務器。如何讓git與遠程服務器一起工作?

所以我在Callisto上創建了一個測試Git倉庫。我遞歸地給了它的目錄所有適當的權限。我讓系統管理員在Callisto上爲我創建了一個登錄名,並且我創建了一個用於通過SSH登錄的密鑰。我設置密鑰來使用密碼;我不知道這是否會導致我的問題?無論如何,我知道我的SSH登錄工作,因爲我通過puTTY測試它。

但是,即使經過數小時的試驗和頭部劃傷,我無法讓我的Windows Git bash(mSysGit)與Callisto交談,以推送或拉動Callisto的git存儲庫文件。

我不斷收到「致命錯誤,遠端意外掛斷」。而且我甚至得到了Git無法識別Callisto上的測試庫作爲git存儲庫的錯誤。我在網上閱讀,「致命錯誤......意外掛斷」通常是服務器連接或權限的問題。那麼我在這裏錯過或俯視什麼?爲什麼不使用git://協議工作,因爲它只使用只讀訪問? Callisto上git存儲庫目錄的組和公共權限被設置爲讀取和執行,但不能寫入。

如果有人能幫忙,我會很感激。謝謝。

回答

0

我只傳遞mSysGit的熟悉,但我不認爲它安裝了一個SSH客戶端。沒有SSH客戶端,git無法連接到服務器。 (根據Unix的理念,這個功能並沒有融入到git中)。至於git協議,除非服務器啓用了它,否則它將不起作用。由於看起來你有用於ssh訪問的服務器設置,我懷疑你會在任何地方使用git協議。

+0

msysgit安裝ssh或 - 如果您有 - 使用選美。 – Vili 2010-05-04 12:32:43

0

無論如何,我知道我的SSH登錄工程 ,因爲我通過puTTY測試它。

您是否確認可以從您的msysgit客戶端SSH連接到服務器?
即當您從msysgit命令行輸入ssh [email protected]時會發生什麼?

有關設置您的git服務器的更多詳細信息,您可能需要查看Pro Git:第4章"Git on the Server"

爲什麼不使用 混帳拉://協議的工作,因爲只有 使用只讀訪問?

要使git協議起作用,您必須在服務器上設置git daemon,如Chapter 4.9 of Pro Git中所述。

你可能也想看看this answer到一個相關的SO問題。它有一個更詳細的考慮事項清單。

1

如果使用膩子/選美,檢查你的主機是在know_hosts文件中

docssettings/userdir/.ssh 

如果沒有,第一次嘗試膩子和接受你的服務器提供的關鍵。

您是否在.git/config中有類似的行?

[remote "origin"] 
url = ssh://[email protected]/.../repo.git 
相關問題