我已经对这个问题进行了大量的谷歌搜索,我发现的大部分主题都是2年以上,所以我想知道是否有任何改变,或者是否有新方法来解决与此主题相关的问题.
正如您在使用IntelliJ时所知道的那样(我使用14.0.2),它经常会自动保存文件.对我来说,在更改Java或Javascript文件时,保存更改大约2秒.有人认为应该对此产生影响的选项,例如设置>外观和行为>系统设置>同步>如果应用程序空闲X秒,则自动保存文件.这些设置似乎对我没有任何影响,IntelliJ仍然自动保存,例如,如果我需要向上滚动以记住我引用的方法是如何做的.
当我进行JS开发时,当我进行自动制作时会非常令人沮丧,这会使TomCat陷入困境,或者通过Grunt,Karma等监视文件.他们最近投入了一个神奇的环境吗?有没有人想出如何关闭自动保存,或实际上延迟它?
1> Javaru..:
它不能完全禁用.它是IDE功能的核心,并且大量集成到其操作中,包括Open API(用于插件).关闭它会导致许多功能出现问题.
您可以禁用它们Save files on frame deactivation
和Save files automatically if idle for x seconds
设置(通过文件>设置>外观和行为>系统设置):
禁用这些设置后,IDEA仅自动保存主要事件,如构建,运行make,运行测试或应用程序等.<编辑>还应注意插件作者可以访问FileDocumentManager.saveAllDocuments()方法调用自动保存.这也是为什么删除此功能会有问题的另一个原因. EDIT>在文件中滚动不应该是触发自动保存的事件(除非第三方插件正在这样做).我等了15分钟才核实 - 没有自动保存.如果您看到不同的行为,我建议您打开错误报告(https://youtrack.jetbrains.com).您需要提供尽可能详细的信息,因为IDEA 14.0.2已经推出了相当长的一段时间,而且没有自动保存问题的报告.
请注意,我已打开设置>编辑器>常规>编辑器选项卡> Mark Modified tabs with asterisk
以验证文件未自动保存.(即,在长时间闲置和我重新启动IDEA框架后,星号仍然存在.)你打开了吗?它可能是自动保存之外的其他东西,导致其他工具看到文件更改.启用星号选项有助于确定.
编辑
您是否通过IntelliJ IDEA运行/调试配置启动Tomcat?如果是这样,您是否将"运行/调试"配置中的"on frame deactivation"选项设置为"Update"选项之一?这会导致文件发生变化.
这种无法控制我的文件保存的时间和频率是一个彻底的交易破坏 - 太糟糕了,有很多关于IntelliJ/PyCharm.
2> Makoto..:
您可以通过启用省电模式来禁用重新编译.
当省电模式打开时,IntelliJ IDEA通过不执行耗费笔记本电池的昂贵后台活动,将其功能降低到文本编辑器之一.这些活动包括错误突出显示和动态检查,autopopup代码完成和自动增量后台编译.
或者,或者如果您认为这有点过于极端,请将Tomcat的更新操作更改为"Do Nothing".
虽然这个设置对我来说太过苛刻,但确实让我想到了我想要的东西.文件>设置>构建,执行,部署>编译器.在进行JS开发时,取消选中自动生成项目.谢谢!
3> 小智..:
我认为正确的答案是作为ryanlutgen上面的评论给出的:
"自动保存"文件的好处不是由于提到的自动保存选项.
IJ保存对构建源的所有更改以自动构建目标.
这可以转入:
Preferences -> Build,Execution,Deployment -> Compiler -> Make project automatically
.
注意:现在必须手动启动项目构建(例如,使用适当的密钥快捷方式)
(所有其他"自动保存"选项只是微调自动保存行为中的内置.)
4> fresko..:
坏消息是:它不可能禁用intellij&Co.(JetBrains Webstorm等)的自动保存.我失去了一些工作,因为我按了CTRL-Z很少的时间来采取一些旧的代码,因为错误我按了"z",我不能再做CTRL-Y了.我无法在其他程序中保持文件打开,因为它一直在变化而另一个程序要求我每天刷新一百次...
好新:有一些解决方法.只需看看以下内容(方括号中的引用指向我评论的底部):
来自官方intellij支持网站[1]:
«调整自动保存行为
以下选项可用于调整自动保存行为("文件"|"设置"|"外观和行为"|"系统设置"):
在帧停用时保存文件(即从IntelliJ IDEA切换到其他应用程序时)
如果应用程序空闲N秒,则自动保存文件
请注意,这些是可选的自动保存触发器,您无法完全关闭自动保存.»
另请查看网站[2](我的评论底部),您可以在其中找到其他解决方法和更多详细信息,如下所示:
«在设置→IDE设置→常规中
取消选中"在帧激活时同步文件"→取消选中"在帧停用时保存文件"
如果可以,取消选中"如果应用程序空闲则保存文件".如果它显示为灰色,请将其设置为6442450秒(约74天)......»
最后是安装eclipse并为它选择一个黑皮肤.没有什么是完美的,但......
编辑:[2]中描述的关于设置一个大数字的选项没有必要,除非某些事情是灰色的,你不能禁用自动保存......我需要测试一下.
啊......下一个问题是找到"保存"按钮/命令.在IntelliJ中,Ctrl + S是"全部保存"...
[1] https://www.jetbrains.com/idea/help/saving-and-reverting-changes.html#d1542336e137
[2] https://intellij-support.jetbrains.com/hc/en-us/community/posts/207054215-Disabling-autosave
最糟糕的是当您执行CTRL-Z并且您发现历史记录不是您期望的那么长时间,并且您无法返回到文件的最后一个工作版本.禁用自动保存,您需要知道当您关闭程序时,它将...保存所有...而不会询问(您确定没有按任何键并覆盖所选文本,或添加了一个使代码生成的字符不工作?).Perosnally,Eclipse更好,此外,它具有更好的搜索功能.
同意.我一直在和PyDev一起使用Eclipse,现在我正在试用WingIDE.我无法理解为什么IntelliJ/PyCharm会做出这种完全反直觉的事情.正如您所指出的,即使^ S也不保存当前文件(就像在其他应用程序中一样)但保存所有文件..呃.
Intellij具有本地历史记录,只有在安装新版本或使缓存无效时才会清除.所以我真的没有得到CTRL + Z问题