错误文件名太长,git pull中止
我使用Windows作为我的操作系统,并与使用Mac的朋友一起开展项目。 他在代码中检查了我们的Github。
我试图把他所做的一切都搞砸了,并且因第三方代码的“文件名太长”错误而中止。
我能做什么?
在Git的msysgit常见问题不能创build一个很长的pathfiledirectory似乎不是最新的,因为它仍然链接到旧的msysgit 票#110 。 但是,根据稍后的票#122 ,问题已经在msysgit 1.9中被修复,因此:
- 更新到msysgit 1.9(或更高版本)
- 启动Git Bash
- 得到你的Git仓库长期的path问题
- 使用
git config core.longpaths true
启用长path支持
到目前为止,这对我很有帮助。
请注意对#122号票的评论
不要回到这里,抱怨它打破了Windows资源pipe理器,cmd.exe,bash或任何你使用的工具。
解决scheme1 – 通过运行以下命令设置全局configuration:
git config --system core.longpaths true
解决scheme2 – 或者你可以直接编辑你的特定的gitconfiguration文件,如下所示:
YourRepoFolder – > .git – > config:
[core] repositoryformatversion = 0 filemode = false ... longpaths = true <-- (add this line under core section)
解决scheme3 – 克隆一个新的存储库时: 在这里 。
迟了几年,但我想补充一点,如果你需要一举做到这一点(就像我做的那样),你可以在克隆命令中设置configuration设置。 尝试这个:
git clone -c core.longpaths=true <your.url.here>
打开your.gitconfig文件以添加longpaths属性。 所以它会看起来像下面这样:
[core] symlinks = false autocrlf = true longpaths = true
作为一个经常遇到这个问题的Windows上的java库,最好的解决scheme是安装Cygwin( https://www.cygwin.com/ ),并使用它的所有>开发> git下的git安装。
这是我遇到的最好的解决scheme,因为Cygwinpipe理长path名,所以其他提供的命令受益。 例如:find,cp和rm。 相信我,当你必须删除Windows中过长的path名时,真正的问题才会开始。
尽量保持文件靠近文件系统根目录。 更多详细信息:由于技术原因, 当绝对path长于260个字符时 , Git for Windows无法创build文件或目录 。