Answers:
我有一个类似的问题,这导致了msysgit的问题。这是我使用的解决方案,它一定对我有用。这个答案是类似这样和那个 SO职务。
如果您使用的是Windows 7,则可以跳过此步骤。如果您使用的是Windows XP,请下载并安装Windows XP Service Pack 2支持工具,其中包含SETX
,SS64和technet中介绍的实用程序,可用于设置永久性系统和用户变量。您必须具有管理权限才能设置全局系统变量。基本用法是SETX <variable> "<value>" [-m]
。
将以下脚本添加到启动文件夹-W7:"C:\Users\<username>\Start Menu\Programs\Startup"
和XP:中"C:\Documents and Settings\<username>\Start Menu\Programs\Startup"
。
SETX HOMEDRIVE %SYSTEMDRIVE% -m
SETX HOMEPATH "\Documents and Settings\%USERNAME%" -m
SETX HOMESHARE "\\<server>\<share>" -m
SET HOME=%SYSTEMDRIVE%\Documents and Settings\%USERNAME%
SETX HOME "%HOME%"
SET TEMP=%HOME%\Local Settings\Temp
SETX TEMP "%TEMP%"
SETX TMP "%TEMP%"
注意: SETX
变量是永久性的,但是直到脚本运行后才可用,因此可用于SET
在脚本中创建临时变量。如果变量有空格,也要在您想要将变量设置为的值周围使用双引号,但这不是必需的SET
。机器变量通过-m
选项设置。用户变量是默认值。Windows 7有更多选项和用途,/
而不是Windows 7 -
。
您所做的更改很有可能会在您下次附加到域时(通过组策略等)被撤回。
您是否考虑过询问公司的IT人员是否可以为您改变这种情况?
也许在笔记本电脑上创建一个本地用户以在域外使用,这样您就不必等待这些慢速链接快捷方式,也不必试图绕过公司介绍的域用户设置。
在公司环境中,我遇到了类似的问题,并且开发了各种技巧和解决方法。在我当前的设置中,以下值是域强制的:
set HOME
HOMEDRIVE=G:
HOMEPATH=\
HOMESHARE=\\Server\Users\username
但是通过我的解决方法,生成的映射为:
HOMEDRIVE => G: => \\Server\Users\username => C:\Users\username
HOMESHARE => \\Server\Users\username => C:\Users\username
当其他服务器路径/驱动器映射转到远程服务器时:
O: => \\Server\Example => \\Real_Server\Example
\\Server\Example => \\Real_Server\Example
这些仅在Windows 7中经过测试,但是我想如果您拥有mklink工具,它们也将在Windows XP中工作。
外出工作时(未连接网络驱动器),TortoiseGit会出现问题。
变化HOME
,HOMEPATH
无济于事!!
解:
mkdir c:\home
net use g: /delete
subst g: c:\home
g:
网络驱动器在哪里。
它们位于高级系统属性中。在Vista / Win 7上:
我知道我迟到了该线程,但是当我的IT部门更改了组策略并且HOMEDRIVE变成M:时,我遇到了同样的问题:代替C:和HOMEPATH只是将“ \”插入了“ \ Users \ [username] ”。我查看了Git代码,发现只有在未定义HOME的情况下,它才使用HOMEDRIVE / HOMEPATH组合。
所以我只是将HOME(幸运的是,不在GP中)定义为“ C:\ Users \ [username]”,Git .gitconfig
再次找到了。