在升级到IntelliJ IDEA 2021.2.2 Ultimate Edition之后,我注意到现在当我转到Commit窗格并选择在Default Changerboard中的文件上显示差异时,它会将Unversioned Files包含在用于差异比较的文件集中。
也就是说,我只更改了pom.xml
中的一行代码,但我还有一些未版本化的文件,比如说temp.sql
。如果我通过在Default Changerbox中选择Show Diff from pom.xml
来打开Show Diff工具,则Compare to Next File按钮仍然处于启用状态。点击它会把我带到temp.sql
,尽管我不想看它,因为我甚至没有在源代码控制中。
例如,这里我有一个Default Changerator,它对源代码管理中的一个文件pom.xml
进行了更改。我有一个未版本化的文件,名为temp.sql
。
当我在Default Changlist中的文件上选择Show Diff时,在我看来,在我以前的IntelliJ版本中,它应该只显示. Default Changlist,即pom.xml
。相反,它给了我pom.xml
和temp.sql
。
这是一个新功能吗?对我来说就像一个bug。我好像找不到任何相关文件。我找不到任何方法来关闭它。
我看到在首选项的版本控制>提交部分有一个“显示未版本化的文件”复选框,但点击它似乎没有改变任何东西。
1条答案
按热度按时间rsl1atfo1#
1.如果我选择在Default ChangerList对象上显示差异,而不是在Default ChangerList中的文件上显示差异,它会根据需要将导航限制到更改列表中的文件。只有当我在默认更改列表中选择Show Diff from a file时,才会出现这种情况,默认更改列表包括所有更改列表中的所有文件,包括未版本化的文件。
新提交工具:不要跳转到其他更改者的更改
我总是在提交之前检查当前变更表上的所有变更。我关注diff预览并使用F7跳过所有文件上的所有更改。以前,当我到达最后一个文件F7停止跳转到其他文件。但是在启用新工具后,当我在当前更改列表上的最后一个更改文件上按F7时,它会跳到下一个更改列表上的第一个更改。这是一个问题,因为我可以开始审查不打算立即提交的更改,浪费时间,使我困惑,甚至冒着混合来自不同更改集的文件的风险。
我在https://youtrack.jetbrains.com上没有发现这个问题,因为我还没有尝试过在源代码控制中将文件与非默认更改列表中的更改一起使用。我只是在YouTrack中搜索显示差异现在包括非版本化文件的事实。
所以,看起来如果你选择Show Diff from a file in a change list,那么diff comparison tool现在将包括 * 所有文件 *,不管它们在哪个更改列表中,也不管它们是否在源代码控制中。
我认为这是一个bug,并投票支持这个问题。我鼓励其他人也这样做。