如何在使用IntelliJ IDEA管理基于Git的项目时禁用代码预提交分析?

77

我在IntelliJ IDEA中有一个项目,使用Git/GitHub作为源代码控制。每次我试图提交更改时,IntelliJ IDEA会运行漫长的代码分析并搜索TODO。当它发现“问题”时,提示我是否要查看或提交。

我不想让预提交代码分析运行,并且也不想让IntelliJ IDEA询问我结果。我无法在常规的IntelliJ IDEA项目/IDE设置中找到任何设置以禁用此功能。如何禁用此功能?

6个回答

116
截至2022年3月,'Amend' 复选框旁边有一个齿轮图标,允许您关闭检查功能。 输入图片描述

3
谢谢。这应该是被接受的答案。 - Zatara7
1
在 IntelliJ IDEA 2022.3.1(社区版)中,齿轮已经移动到提交窗口的右下角,不再与修订选项相邻。 - lineage
1
在IntelliJ IDEA 2022.3.1(社区版)中,设置按钮已经移动到提交窗口的右下角,不再与修订按钮相邻。 - undefined

65
此回答已过时。请参阅Interlated的答案获取更为最新的答案。

针对 IntelliJ IDEA 11.1.5 的答案:

在“提交更改”对话框中有持久性复选框。下一次您要提交更改清单时,请取消“执行代码分析”和“检查 TODO”复选框。

如果您想立即完成:

  • 对文件进行一项非侵入式的“测试更改”;例如,向任何文件添加一个测试注释
  • 右键单击更改列表,选择“提交更改...”
  • 在“提交更改”对话框中,取消“执行代码分析”和“检查 TODO”复选框
  • 单击“提交”以保留设置。然后可以撤消测试注释并提交。

我找不到任何方法来默认禁用这些复选框以供新项目使用。


8
+1,这个问题也让我抓狂。很遗憾没有一种简单的方法可以全局关闭它。我想IntelliJ应该知道什么对我最好,就像它比我更懂如何缩进代码一样。 - Jack Leow
2
你可以告诉IntelliJ如何“精确地”格式化你的代码。它有默认设置,但所有设置都可以在“设置>编辑器>代码样式”配置选项中覆盖。 - TetraDev
1
对于最近的 IDEA 版本(没有 Commit 模态框),请查看 Interlated 的回答。 - Samuel Lindblom

17
以下是可能更简单的方法(尽管有点 hacky)来实现此目的。这涉及对文件进行简单编辑,并且,根据您编辑的文件,会导致选中框默认未选中,要么应用于现有项目(A),要么会默认禁用所有新项目的选中框(B)。
这已在 IntelliJ IDEA 版本 2016.3 上进行了测试。
(A)项目级别更改
(应该用于现有项目,您已经厌倦了为每次提交禁用任何一个选中框。)
要使这两个复选框 在特定项目中 默认处于禁用状态,在 .idea/workspace.xml 中,在名为 VcsManagerConfiguration 的组件下添加以下两个 option
<component name="VcsManagerConfiguration">
    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" />
    <option name="CHECK_NEW_TODO" value="false" />

选项名称很容易理解(前者用于禁用“执行代码分析”,后者用于禁用“检查TODO”)。

请注意,效果是立即生效的。您无需重新启动IntelliJ IDEA或重新打开项目



(B)IDE级别更改-将影响所有新项目

(默认情况下应该这样做。对于任何新项目,复选框将被禁用。)

如果您进行相同的更改,即将下面两个option添加到文件VcsManagerConfiguration中的project.default.xml(此文件的位置在下一节中详细说明了主要操作系统),那么这将被所有新项目继承,并且您将永久摆脱这种烦恼,直到IntelliJ IDEA的更新改变了这些设置的存储方式:)

<component name="VcsManagerConfiguration">
    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" />
    <option name="CHECK_NEW_TODO" value="false" />

project.default.xml的位置

(基于IDE用于存储设置、缓存、插件和日志的目录。) (我只验证了OS X路径。其余路径基于上述链接且未经验证.)

Mac OS X: /Users/az/Library/Preferences/IntelliJIdea2016.3/options/project.default.xml

Windows: c:\Users\John\.IntelliJIdea2016.3\config\options\project.default.xml

Linux: ~/.IntelliJIdea2016.3/config/options/project.default.xml


这应该是被接受的答案。我使用“提交”视图而不是“更改列表”,并且没有办法从其UI禁用它 :( - Jakub Bochenski

16
您可以通过以下路径访问PHPStorm的设置:
设置 -> 版本控制 -> 提交 -> 提交前
如下所示: enter image description here

遇到了 PhpStorm 2022.1.3 相同的问题,这个解决了它。 - Dennis Helfensteller

1

一旦您添加了提交消息,然后单击提交消息框上方的3个点。对话框将出现,您将能够在提交之前选择检查。

intelliJ idea screenshot dialog box


0
在提交屏幕上的提交消息上方,有一个齿轮可以让您选择在进行提交之前要执行什么操作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接