内容提要
作者与朋友用 Dropbox 协作编程,前端由朋友负责,后端由自己负责。因项目较小未用 GitHub。但 WebStorm 的 .idea 目录会同步项目设置,导致布局被改。解决办法是在 Dropbox 偏好设置中取消同步 .idea 和 node_modules 文件夹,并在 .emacs 中关闭备份文件。
延伸解读
Dropbox 同步项目设置带来的干扰
文章指出,WebStorm 会在每个项目的 .idea 目录下保存特定设置。当使用 Dropbox 共享项目时,这些设置也会被同步,导致协作者的编辑器布局被意外更改。这提醒我们,用云盘协作时,IDE 的配置文件可能成为干扰源,需要提前识别并处理。
在 Dropbox 中排除特定文件夹的方法
作者提供的解决方案是在 Dropbox 偏好设置的账户选项中取消勾选 .idea 文件夹。虽然 Dropbox 没有类似 .gitignore 的强大忽略机制,但通过选择性同步可以避免同步不必要的文件。同时,作者强烈建议取消同步 node_modules,因为大量小文件会拖慢同步速度。
Emacs 临时文件的处理
如果使用 Emacs,备份文件可能会被同步,造成困扰。作者给出的方法是在 .emacs 文件中添加 (setq make-backup-files nil) 来关闭备份文件生成。这虽然能避免同步垃圾文件,但也意味着失去备份保护,需要读者自行权衡。
Q&A
为什么作者和朋友协作编程时选择 Dropbox 而不是 GitHub?
因为项目较小,使用 GitHub 显得有点重,而 Dropbox 是最简单的共享文件夹方式。
用 Dropbox 协作时,WebStorm 的布局为什么会被自动改变?
因为朋友也使用 WebStorm,而 WebStorm 会在每个项目的 .idea 目录中保存特定设置,这些设置通过 Dropbox 同步后覆盖了作者的布局。
如何在 Dropbox 中避免同步 .idea 文件夹?
在 Dropbox 的偏好设置中,进入 Account -> Change Setting,取消勾选 .idea 文件夹即可。
为什么建议在 Dropbox 中取消同步 node_modules 文件夹?
因为 node_modules 包含大量小文件,Dropbox 同步这些文件会花费太多时间。
使用 Emacs 时,如何避免产生临时备份文件?
在 .emacs 文件中添加 (setq make-backup-files nil) 即可。
Dropbox 有没有类似 .gitignore 的忽略文件功能?
有,但不如 .gitignore 强大。可以通过 Dropbox 偏好设置中的 Account -> Change Setting 取消勾选特定文件夹来实现。