当磁盘上的文件发生变化时,如何防止phpstorm在没有提示的情况下重新加载文件?

时间:2011-07-08 07:16:05

标签: php intellij-idea phpstorm

当一个文件被phpstorm打开时,我在没有保存的情况下进行了一些更改。 但与此同时,磁盘上的文件也发生了变化。 然后phpstorm将从磁盘重新加载文件,没有提示。我所有的改变都会丢失。

2 个答案:

答案 0 :(得分:31)

  1. Settings/Preferences | Appearance & Behavior | System Settings

  2. 取消Synchronize files on frame activation选项

  3. 现在,PhpStorm会问你该怎么做:你将无法选择:

    • 加载文件系统更改(从文件加载外部更改)
    • 保留内存更改(忽略外部更改并继续使用编辑器中的文本)
    • 显示差异(显示差异视图以查看差异并决定需要手动更改的内容)

答案 1 :(得分:3)

@ LazyOne的答案与早期版本的PhpStorm有关。在PhpStorm 8.0中,有两个复选框可以更精细地控制文件同步设置:

  1. 在PhpStorm中,从菜单中选择偏好设置或点击⌘逗号(Mac)或Ctrl + Alt + S(Linux和Windows),打开设置/偏好设置对话框。
  2. 点击外观&行为,然后点击系统设置
  3. 同步下,有两个复选框:第一个标记为框架激活时同步文件,第二个标记为框架停用时保存文件
  4. 这是复选框的作用:

    • 当您从其他应用程序切换到PhpStorm 时,检查第一个框将检测并重新加载磁盘中的外部文件。
    • 每次从PhpStorm 切换到另一个应用程序时,选中第二个框将保存所有已修改的文件。
    • 如果您取消选中两个框,PhpStorm会提示一个简单的提示,说“#34;文件已更改在磁盘上”#34;有一个链接,可以在PhpStorm中重新加载它们。

    当PhpStorm与磁盘上发生变化的文件发生冲突时,系统会要求您选择要执行的操作:

    • 加载更改:单击此按钮可加载生成的文件版本 在PhpStorm之外,并覆盖您当地的更改。
    • 保留内存更改:单击此按钮可保留在PhpStorm中生成并存储在缓存中的版本。
    • 显示差异单击此按钮可调用差异查看器,该查看器在左侧显示文件系统中的版本,在右侧显示PhpStorm版本。

    可以在System SettingsFile Cache Conflict页面的PhpStorm文档页面中找到更多详细信息。