尝试设置文件名长度的限制与GIT - 权限被拒绝
我试图克隆含有长路径名文件GitHub的仓库,我试图使用命令尝试设置文件名长度的限制与GIT - 权限被拒绝
git config --system core.longpaths true
绕过Git的文件长度的限制
不过,我收到错误消息:
error: could not lock config file C:\Program Files\Git\mingw64/etc/gitconfig: Permission denied
error: could not lock config file C:\Program Files\Git\mingw64/etc/gitconfig: Invalid argument
这似乎很奇怪,但该命令试图改变中的程序文件文件,而不是在C:\ Users \用户名,它应该是。此外,当我检查.gitconfig文件的C:\ Users \用户名时,我无法找到一个。有谁知道发生了什么事?
你想要git config --global
。
这似乎很奇怪,但该命令试图改变中的程序文件文件,而不是在C:\ Users \用户名,它应该是。
这是预期的行为。由于您运行的是git config --system
,因此它将查找系统范围的配置文件。从git-config
docs ...
--system
对于写作的选项:写全系统$(前缀)的/ etc/gitconfig而不是库的.git/config中。
你可能想要的是git config --global
写入您的用户目录中的全局git配置文件。这与git config --local
不同,后者用于写入.git/config
中的当前存储库配置文件。
--global
对于写作的选项:写入全球〜/的.gitconfig文件,而不是库 的.git/config中,写$ XDG_CONFIG_HOME/git的/ config文件,如果该文件存在,并且 〜/ .gitconfig文件没有。
我希望msysgit
没有改变git config --system
的行为,所以它天真地使用Unix风格/etc/gitconfig
一起捣碎一个Windows风格的前缀C:\Program Files\Git\mingw64
并获得混合定界符废话路径。
考虑letting them know about this behavior并建议给出更好的错误消息。
你期待'core.longpaths'做什么?我看到下面的命令在Git仓库中运行,根本没有输出:'git grep -i longpath' – torek
请参阅:http://stackoverflow.com/questions/22575662/filename-too-long -in-git-for-windows – Alex
啊,所以这不是一个Git的东西,而是针对msysgit。我添加了msysgit标签;也许有人会知道。 – torek