使用terminal和MacFusion时出现GIT_DISCOVERY_ACROSS_FILESYSTEM问题

我使用MacFusion和OSXFuse(类似于MacFuse)通过SSH将我的服务器安装到我的办公室机器上。 当我进入我的rails的工作目录在服务器上,我看不到我的zsh提示符中的任何git信息。 如果我尝试一个git拉起源,我得到以下错误信息:

fatal: Not a git repository (or any parent up to mount parent /Volumes) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set) 

我知道我可以ssh到服务器,但那么我不会失去zsh autocorrection&历史? 我不需要设置textmate和其他软件来使用SSH? 而且我不需要远程桌面来安装DMG等等吗? 所有这些似乎都有点麻烦。

有没有更好的方法来做我想做的事情? 否则有没有办法启用GIT_DISCOVERY_ACROSS_FILESYSTEM?

PS – MacFusion也可以通过FTP挂载服务器 – 对SSH来说会更好吗?

你是否在工作目录里面有一个目录? 如果您的ssh挂载点的根目录不包含.git目录,那么zsh将无法findgit信息。 确保你正在装入包含回购根目录的东西。

至于GIT_DISCOVERY_ACROSS_FILESYSTEM,它不会做你想做的。 Git默认会停在文件系统边界。 如果你打开它(这只是一个env var),那么git将跨越文件系统的边界,并继续寻找。 然而,这几乎是没有用的,因为你可能暗示你在本地机器上有一个.git目录,这个目录是为了pipe理一个由sshfs挂载部分组成的工作树。 这没有什么意义。

我得到这个错误,直到我意识到,我没有初始化该文件夹,在一个安装的stream浪者机器上的Git存储库。

所以我inputgit init ,然后git工作。

如果git没有权限读取configuration文件,你也会得到这个。 它将假定只是在层次结构树中上升,直到它需要跨文件系统。

尝试不同的协议。 git://例如,你的防火墙可能有问题; 用https:尝试一个git克隆。

我的问题是,我没有在我刚刚克隆的正确的git目录。