2010-10-17 34 views
0

我有一個web項目設置爲從git倉庫進行部署。capistrano無法克隆http上的git子模塊

如果我設置了HTTP子模塊的項目(如http://github....etc)未部署,與:

** [my-dev-server.com :: out] Synced lib/vendor/odm 
** [my-dev-server.com :: out] Cloning into lib/vendor/odm... 
** [my-dev-server.com :: err] fatal: Unable to find remote helper for 'http' 
** [my-dev-server.com :: err] Clone of 'http://github.com/doctrine/mongodb-odm.git' into submodule path 'lib/vendor/odm' failed 

似乎與子模塊的訪問方法做,因爲,如果工作正常我:

  • 刪除子模塊
  • 設置通過ssh子模塊而不是http(即GIT中@ github上....等)

有誰知道是什麼原因導致這個錯誤以及如何解決它?

我不認爲使用http作爲子模塊時存在問題,因爲我已經看到其他使用http子模塊的capistrano教程,並且沒有提到它是一種特殊情況。

謝謝。

回答

0

最終找到了解決方案。

與Capistrano無關。即使是一個git克隆http:// ....也會在生產服務器上失敗。

找到我的答案在這裏 https://forums.hostingplayground.com/showthread.php?p=2562

總之,似乎CentOS的可以使用舊版本的捲毛比git的需要能夠以http克隆結束。

我按照該帖子中的說明在生產服務器上升級Curl,然後部署任務可以正常使用http子模塊。