Git with curlftpfs

时间:2011-11-24 14:11:41

标签: git ftp rsync fuse curlftpfs

我想使用FTP服务器作为git repo。 我知道这样做的唯一方法是使用curlftpfs挂载ftp。

但是使用curlftpfs时,无法执行任何git命令。

还有其他解决方案吗?

我无法使用rsync,因为我在删除和新文件时遇到问题。 如果我在源上创建或删除文件,这也应该在目的地上发生。 为此我可以使用--delete和update选项。但是,如果目标上的新文件不存在于源上,则不应删除该文件。 我认为使用rsync是不可能的,因为它没有保存任何历史记录。

2 个答案:

答案 0 :(得分:1)

至少可以在cuteftpfs或其他FUSE安装的文件系统上创建本地单用户git存储库。 git --separate-git-dir选项可以方便地将git存储库放回物理文件系统。

% cd /home/xxx
% mkdir myproj
% curlftpfs ftp://mysite.com/myproj myproj
% chdir myproj
% git init --separate-git-dir ../myproj-git
% cat .git
gitdir: /home/xxx/myproj-git

这样做的好处是可以在FUSE安装的文件系统和本地目录之间轻松镜像。

% git clone . ../myproj-local

答案 1 :(得分:0)

我认为问题是与常规的unix文件系统相比,FTP文件系统是有限的。我正在尝试构建能够推送到FTP的东西,所以你至少要拉动并推送到FTP。