我有ftp服務器,我無法在其上安裝其他軟件。是否有可能創建它的git倉庫和克隆到本地電腦?我試圖創建本地存儲庫並將其複製到ftp。它會起作用嗎?我如何從FTP服務器克隆?ftp服務器上的Git存儲庫
回答
如果Git在服務器上運行,它將工作。
但是從你所描述的內容來看,我猜測它不是。
有討論這個議題在計算器上各種其他問題,例如:
...這可能有一個解決方案,它適合你的情況。
你不說你使用的是什麼操作系統,但如果它是基於Linux的什麼,我會嘗試是安裝FTP服務器爲您的本地文件系統與FUSE + fuseftp的一部分。如果您使用的是Mac OS,則可以嘗試使用MacFuse。 (n.b.我從來沒有試過保險絲,我自己,所以我不能推薦或推薦它。)毫無疑問,Windows也有相應的功能。
然後你應該只能在掛載的目錄下運行git init --bare
,並從它推拉它,因爲它是一個本地存儲庫。您還應該啓用示例post-update
鉤子,以便在每次推送後運行git update-server-info
,否則當與服務器進行交互時,使用ftp://
存儲庫URL進行交互時會出現問題。
是的,它應該工作。見this other answer,也是如何做到這一點。
這是基本相同的通過HTTP訪問,只是用ftp://
協議說明中的網址:
git clone ftp://username:[email protected]/repos/project.git
注:
你只問克隆,但是如果你還需要寫回任何東西回遙控器回購(即也會推),那麼你就沒有運氣,只能使用FTP安裝,並且沒有權限在服務器上運行其他軟件。
FTP訪問不是沒有它的警告,如其他SO答案(上面鏈接)或this post here(關於不可訪問的文件,取決於FTP服務器/配置)所暗示的。
git-clone man page表示FTP傳輸已成爲「棄用」,應該避免出於各種原因。因爲
a)懲罰已經足夠悲慘的只有FTP作爲共享回購股票的唯一選擇的可憐的傢伙,似乎是一個非常不友好的想法。(其他人,有其他選擇的人會更喜歡使用那些)。
b)似乎與gitremote-helpers man page不一致,它也明確提到了ftp傳輸,沒有任何反對。 c)每一種運輸都有其限制/優點,FTP也不例外。 (通過
capabilities
命令的運輸幫手,也可以談判工具沒有問題,什麼使用一個和什麼不)。希望git克隆將繼續在FTP上工作(也許是什麼可怕的評論實際上意味着git並不支持它),只要FTP仍然是一個實用的選擇。
您可以使用git-ftp project工具部署到ftp服務器。它易於使用,可以安裝在本地服務器上進行遠程部署。以下是適合我的基本配置:
- git config git-ftp.user YOUR_FTP_USERNAME # ftpuser
- git config git-ftp.password YOUR_FTP_PASSWORD # ftppass
- git config git-ftp.url YOUR_FTP_SERVER # ftp.domain.com, might be a path to subdirectory ftp.domain.com/public_html
- git config git-ftp.syncroot public_html/ # optional if you only want to push a part of your repository
- git ftp init
- git ftp push