如何防止phpstorm在磁盘上的文件更改时没有提示地重新加载文件?

2022-08-30 20:58:00

当一个文件被phpstorm打开时,我做了一些更改而不保存。但与此同时,磁盘上的文件已更改。然后phpstorm将从磁盘重新加载文件,没有提示。我所做的所有更改都将丢失。


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

  2. 取消勾选选项Synchronize files on frame activation

现在PhpStorm会问你该怎么做:你有几个选项可供选择:

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

答案 2

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

  1. 在 PhpStorm 中,通过从菜单中选择“首选项”或单击 ⌘ 逗号 (Mac) 或 Ctrl+Alt+S(Linux 和 Windows)来打开“设置/首选项”对话框。
  2. 点按“外观与行为”,然后点按“系统设置”。
  3. “同步”下,有两个复选框:第一个复选框标记为“帧激活时同步文件”,第二个复选框标记为“在帧停用时保存文件”

以下是复选框的作用:

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

当PhpStorm与磁盘上更改的文件之间存在冲突时,系统将要求您选择要执行的操作:

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

更多详细信息可以在 PhpStorm 文档页面的系统设置和文件缓存冲突页面中找到。


推荐