Windows git cheetah多次修改path环境变量

Windows git cheetah多次修改path环境变量,windows,git,Windows,Git,只是想知道是否有人有过类似的经历。 Git似乎正在修改我的path环境变量,以下称为$path,因此,如果在我的系统运行几天之后,$path变得一团糟 干净启动后,$路径如下所示: D:\WINDOWS\system32;D:\WINDOWS;D:\Apps\Development\Git\cmd;D:\Apps\Development\Android\Android sdk\platform tools;D:\Apps\Development\phantomjs-1.9.7-windows;D

只是想知道是否有人有过类似的经历。 Git似乎正在修改我的path环境变量,以下称为$path,因此,如果在我的系统运行几天之后,$path变得一团糟

干净启动后,$路径如下所示:

D:\WINDOWS\system32;D:\WINDOWS;D:\Apps\Development\Git\cmd;D:\Apps\Development\Android\Android sdk\platform tools;D:\Apps\Development\phantomjs-1.9.7-windows;D:\Apps\Tools\GnuWin32\bin

当它到达我提到的状态时,它看起来是这样的:

D:\Apps\Development\Git\Git cheetah..\bin;D:\WINDOWS\system32;D:\WINDOWS;D:\Apps\Development\Git\cmd;D:\Apps\Development\Android\Android sdk\platform tools;D:\Apps\Development\phantomjs-1.9.7-windows;D:\Apps\Tools\GnuWin32\bin

除了D:\Apps\Development\Git\Git cheetah..\bin位重复之外,有时(看起来)会重复50次以上


如果您能对此有所了解,我们将不胜感激。首先,很抱歉,这与其说是一个答案,不如说是一个解决办法。我也遇到了同样的问题。最终,我的路径变得如此之大,以至于我的程序找不到任何东西,甚至像XCOPY一样简单

这发生在我的工作计算机上,它受域控制,我没有管理员权限。这些说明假定没有管理员访问权限,严格来说是用户访问权限

为了避免重新启动,我执行以下操作:

在执行这些步骤之前,您可以打开命令窗口并运行
set PATH
,以验证是否有过多的
cheetah
s

  • 转到环境变量对话框(右键单击“我的电脑”->选择“属性”->选择“高级”选项卡->单击“环境变量”按钮)
  • 在“用于
    的用户变量”部分下选择“路径”变量
  • 单击同一部分下的“编辑”按钮
  • 无所事事
  • 在“编辑用户变量”对话框中单击“确定”
  • 在“环境变量”对话框中单击“确定”
  • 在“系统属性”窗口中单击“确定”

  • 打开一个新的命令窗口(已经打开的命令窗口可能会保留其当前环境)并运行“设置路径”以验证您是否返回到路径中的一个或一个“cheetah”。

    我遇到了同样的恼人问题。只需下载git cheetah source,打开common/winexec.c并在线262更改:

    if (path.len) {
        setenv("PATH", path.buf, 1);
        rec->envpath = strbuf_detach(&path, NULL);
    }
    
    致:


    然后,重新编译(cd explorer,mingw32 make)并将生成的dll复制到Program files\Git\Git cheetah中的现有dll上。如果文件正在使用中,可以打开控制台窗口,关闭资源管理器进程并使用命令行进行复制;然后,使用任务管理器(文件->执行)重新启动资源管理器。

    我遇到了完全相同的问题。我还没有找到解决方案,我注意到github项目中有一个bug,我发现使用环境变量对话框可以重置未来的控制台。但是我希望有人知道如何预防它。唯一的区别是我必须使用系统路径变量,因为没有用户路径变量。我在XP r上,你以后可能会用什么?事实上,这是一件非常愚蠢的事情,因为GIT太棒了。我有一个理论tho:我认为回购越多,这种情况就会发生。我只有2到3个存储库,路径在我的path变量中重复了59次。我也看到了。也许你在资源管理器中右键点击的次数越多,git上下文菜单就会出现。我觉得奇怪的是,这种解决方法是有效的。而且,不仅仅是右键单击并从上下文菜单中打开CMD。我不知道为什么这不是公认的答案。在Windows 10和2015上运行非常完美。
    if (path.len) {
        if (!strstr(getenv("PATH"), gitpath))
            setenv("PATH", path.buf, 1);
        rec->envpath = strbuf_detach(&path, NULL);
    }