引入:

以前一直在linux环境中做开发,然后版本控制工具用git,然后一直没问题,但是这次,我在windows上装了一个git客户端,然后卸载时候,发现没办法很干净的卸载。


如图每次当我打开某个目录时候,它都会提示如下:

170106392.png

这样一来极大的影响了我的工作效率,我必须得解决它。



问题分析:

无奈,先上网google下,无解,很苦恼,然后我就想这个原因是找不到git的路径,那么谁去触发它呢?肯定是git在注册表中配置了某个 git路径然后那个路径被我删了。

于是我找到了注册表,果然:

170248621.png

在git里面配置了一个Default位置,然后显示(value not set)


于是,我大刀阔斧的吧这个Git删除了:

170419163.png

结果发现还有这个问题。


后来终于发现了,其实是一个dll文件在作怪,在我git安装目录下,有一个文件叫git_shell_ext.dll

170449541.png

只要这个动态链接库文件存在,在运行阶段,一旦某个目录曾经被git初始化过,那么它会去到这个git_shell_ext.dll中去找相应的函数,而这个文件在其函数中会依赖git的路径,所以就报错了。


我在命令行吧这个文件删除了之后,打开文件再不报错了

170757163.png