在sshfs上使用git太慢了

时间:2011-08-30 15:37:31

标签: git sshfs

我在sshfs上使用git(在Mac OS X 10,5,10.7下),但速度太慢了。

每次我直接登录远程服务器,都要使用git命令。

我试过这篇文章,http://kerneltrap.org/mailarchive/git/2008/10/23/3768494然而它不起作用。

有谁知道任何好主意?

3 个答案:

答案 0 :(得分:20)

您可以选择其他一些文件系统。 SSHFS主要是一种便利工具。例如,MacOS支持NFS挂载,而且速度很快。

另一种方法是使用rsync或unison('双向rsync'工具)。这些在远程和本地文件系统之间实现了快速同步。加上一些用于远程编译/运行的快速shell别名,这是一个很好的解决方法。

另一种方法是通过VNC / X11远程运行您的开发环境。这使得IDE稍微缓慢,但代码不需要同步。

以上的混合是制作删除服务器的虚拟机克隆,在本地盒子上运行它,并通过VM或两者之间的某些本地NFS共享文件夹。

你也可以调整sshfs。有一些调整挂载选项,您也可以关闭加密。它总体上提供了大约2倍的加速,所以不要指望奇迹。

和海报一样,我多年来一直在寻找解决方案,但是没有这样做,我不幸地与精心调制的sshfs,偶尔的rsyncs和耐心等结合起来。

答案 1 :(得分:7)

我知道这很老了但我每天都遇到这个问题。我有一个非常复杂的环境,在本地重建几乎是不可能的/冗长的。我们到处都有东西,并使用第三方API cPanel API等。

对我有用的唯一解决方案是在sshfs上本地挂载和处理文件,但是当它是git的时候我打开了一个终端窗口,它只是ssh'd,这对我有用。有没有理由你不能/不想打开终端?否则,这似乎是最快的解决方案,对我来说最可靠。

答案 2 :(得分:1)

如果我理解正确,你就是通过sshfs直接访问git存储库。

git的重点是分发并且能够推/拉,所以你为什么不把repo克隆到本地fs?请记住,git clone也可以从文件系统中运行,您不需要从“联网”(ssh,http,git等...)存储库中克隆。

$ git clone /my_sshfs_mountpoint/repo

你已经准备好摇滚了。完成后,请记住git push支持你的工作。