本文转自知乎,原作者 遥星:传送门
版权归原作者所有,如有侵权请立即与我联系,我将及时处理。

起因

在公司电脑上使用 IntelliJ IDEA 的时候发现操作Git特别的慢,status、fetch、pull、checkout、commit等基础操作都执行的特别慢,下方的Task进度条一直处于等待中,等待差不多10秒多的时候才开始执行进度。最难以忍受的是,在Settings里面检查Git的版本操作都需要接近20多秒的时间,才能返回结果。

结论

花了几天时间跟踪 IDEA 的执行日志以及翻看 IDEA Git插件的源码,偶然发现 IDEA 在执行 Git 命令的时候,其实是调用了一个exe程序来执行名令的,问题就出在这个exe程序上面,猜测应该是公司给初始化的系统本身有什么域设置不合理导致在我这个系统版本执行的提交特别慢,就像是队列里面排队等候一样,最终试着把这个exe改了后缀名,问题就解决了。

解决方法

昨天公司看到有小伙伴在大群里问运维同事能不能处理一下这个问题,我突然意识到居然不止我一个人遇到了这个问题,所以分享到知乎上,供遇到这个问题的朋友们参考。

处理方案:只需要删除掉JetBrains系 IDE 安装目录下的runnerw.exe(64位系统的runnerw64.exe)或者直接更改后缀名,反正只要让 IDE 找不到这个exe就可以,然后这个问题就解决了。不需要重启 IDE ,即时生效,如果你使用的是 JetBrains ToolBox 来安装升级 IDE 的话,每次IDE更新,你都需要重新去屏蔽那两个文件;如果是官网下载安装包安装的,改一次就行了。

关于Toolbox

如果你是Toolbox安装的IDE,要找到IDE的安装目录的话,你可以在开始菜单搜索IDE快捷方式右键“打开文件所在的位置”;
也可以直接在Toolbox里找到你的 IDE,然后点击右侧的"三个点"更多菜单,里面选择“Settings”进入 IDE 设置,依次点击“Configuration”展开选项,找到“Install location”,可以直接复制安装路径,或者点击下方的“Show…”直接打开安装目录。

后续

已确认,卡顿和执行慢的根源是某些钩子程序,我这边的是“IP Guard”导致。

如果你是公司电脑,按照上面提到的方法处理就行,毕竟公司的没办法。

如果你是自己私人电脑,那就想办法删掉这个“IP Guard”吧,这个玩意是用来监控你的电脑的,有些公司是强制要求,然后通过域设置推送到你的计算机上的,那就不能删除。如果是私人电脑,百度一下怎么删除,按照文章,一般是通过pe进去,然后删掉那些文件就行了
关于如何查看你的电脑是否也被“IP Guard”所支配,去看看你C盘系统目录就知道啦,具体路径的话,看看有没有"winrdlv3.exe"这个程序就好了,参考路径如下:
C:\Windows\System32\winrdlv3.exe
C:\Windows\SysWOW64\winrdlv3.exe

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐