如何使用IntelliJ IDEA禁用Git支持的项目的预提交代码分析

时间:2013-05-04 01:39:04

标签: git github intellij-idea commit code-analysis

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

我不希望运行预提交代码分析,我也不希望IntelliJ IDEA向我询问结果。我似乎无法在常规IntelliJ IDEA项目/ IDE设置中找到任何设置来禁用此功能。如何禁用此功能?

3 个答案:

答案 0 :(得分:48)

回答IntelliJ IDEA 11.1.5:

“Commit Changes”对话框中有持久性复选框。下次提交更改列表时,请取消选中“执行代码分析”和“检查TODO”复选框。

如果你想现在就完成它:

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

我无法在新项目中默认禁用这些复选框。

答案 1 :(得分:12)

从 2021 年开始,“修改”复选框旁边有一个齿轮,可让您关闭检查。

enter image description here

答案 2 :(得分:6)

以下可能是一个更简单的方法(尽管有点更黑客)。这涉及对文件进行简单编辑,并且根据您编辑的文件,导致默认情况下未选中复选框以用于现有项目(A)或导致默认情况下禁用所有新项目的复选框(B)

这已经在IntelliJ IDEA版本2016.3上进行了测试

(A)项目级别变更

(这应该用于现有项目,在这些项目中,您无法禁用每次提交的任一复选框。)

要在默认情况下为特定项目禁用这两个复选框,请在.idea/workspace.xml中在名为option的组件下添加以下两个VcsManagerConfiguration

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

选项名称不言自明(前者用于禁用Perform Code Analysis,后者用于禁用Check 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

的位置

(基于 Directories used by the IDE to store settings 。)(我只验证了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