首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将WebStorm (JetBrains)与安装了SSHFS的开发服务器(Mavericks,OSXFUSE)一起使用?不断卸载驱动器

将WebStorm (JetBrains)与安装了SSHFS的开发服务器(Mavericks,OSXFUSE)一起使用?不断卸载驱动器
EN

Stack Overflow用户
提问于 2014-07-25 03:06:50
回答 1查看 6.3K关注 0票数 3

更新:我看到有人试图将PyCharm与SSHFS一起使用,而JetBrains说:“不”。也许这就是行不通的?

我正尝试在客户办公室的SSHFS挂载磁盘上使用WebStorm -我以前从未使用过SSHFS。我使用的是OSX 10.9.2,通过home-brew安装了SSHFS,并安装了OSXFUSE。

在任何情况下,SSHFS挂载都会定期卸载,但是因为我开始尝试使用WebStorm,所以每次启动WebStorm时它都会卸载,并且它开始扫描SSHFS磁盘上的文件。- WebStorm会给出消息“外部文件更改同步可能很慢:无法查看项目文件(它们是否在网络挂载中?)”。如果我试图打开文件,它就会冻结。同时,SSHFS光盘已被卸载。如果我通过终端重新挂载,WebStorm会不高兴,要么死机,要么就坐在那里。

我使用“从现有文件新建项目”- is来设置WebStorm项目,有没有办法使用SSHFS作为服务器?除了SSHFS光盘的登录和密码之外,我没有任何其他特定于服务器的信息,但也许可以获得它。

感谢你的帮助-

EN

回答 1

Stack Overflow用户

发布于 2014-09-21 06:54:55

这就是我的操作方式,也许它可以帮助你。如果有一个配置设置我似乎已经忽略了,只要问一问,我就会解决这个问题。但总而言之,这是非常成功的:

我的构建环境隐藏在Linux发行版上,但我的开发环境位于Mac Desktop (当我在工作时)和Mac Air (当我在家里时)。我的项目很庞大,而且根据合同,如果我的笔记本电脑被盗,我不能将代码转移到任何可能可以访问的机器上。因此,我几乎必须使用ssh (和sshfs)来完成任何工作。

当我在家里坐下来工作时,我会手动启动VPN --因为有这么多变化,我假设您知道如何完成这一部分。

我打开一个终端并调用:

代码语言:javascript
复制
caffeinate &

因为每当电脑进入屏幕保护模式时,我就讨厌断开连接。这可能就是你断线的原因吧?每当我在开发时,我都会让这个终端处于打开状态。我还使用tmux,以便可以在计算机之间共享我的终端会话。不管怎样..。

我在服务器和客户端之间设置了一个挂载点。我有一个在挂载点关闭时运行的脚本(为您自己的工作定制):

代码语言:javascript
复制
umount -f /Volumes/$MOUNTDIR/
umount -f /Users/$HOMEUSER/$MOUNTDIR
mkdir /Users/$HOMEUSER/$MOUNTDIR
sshfs $HOMEUSER@@SERVERADDR:/usr/$HOMEUSER/$MOUNTDIR /Users/$HOMEUSER/$MOUNTDIR

然后我推出了Webstorm,PyCharm,ADS,IntelliJ (我是Jetbrains的粉丝)。

此时,您可以在$MOUNTDIR中打开该目录并开始工作。如果您发现需要运行构建,这里有一个提示--不要在本地构建。相反,使用SSH在服务器上发出构建命令(或运行脚本)。在构建运行后同步的开销很可能比获取和编写构建的所有步骤要少得多。

我只发现如果我失去了VPN,我就会断线。过去每当电脑进入睡眠状态时,我就会断线。咖啡因解决了这个问题。

对于规模合理的项目,这可能就是您所需要的。因此,下面是一个优化--只有在你头疼的时候才这样做:

为了加快加载速度,我所做的是创建一个本地项目,该项目不是挂载的一部分。在您作为项目打开的第一个目录的基础上,创建了一个.IDEA目录,并将其写入许多目录。在这个目录中有很多被写入的文件,这取决于你的网络速度,它可能会导致痛苦。这确实意味着无论你走到哪里,都必须维护一些设置,但在我的例子中,为了获得巨大的性能收益,这是一个很小的代价。

因此,因为我这样做,所以我必须手动将目录添加到我的项目中(在Preferences/ directories下)。但是,如果您使用的是大型API,那么无论如何您都可能会这样做。我很小心地将我不需要引用的目录标记为“排除”,以使索引器上的工作更容易。我和数以千计的其他员工在一个共享目录结构中工作,并且我确保流不会交叉。

现在我有成千上万的文件,同步确实很慢。但只有当你离开应用程序并返回时,同步才会触发。老实说,这并不是那么可怕,只要你有一个合理的互联网连接。

我希望这能帮到你。一旦我开始使用这个作为我的工作流程,我就再也没有回去过。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24941967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档