git pull中止错误文件名太长

时间:2014-01-14 20:32:37

标签: git

我正在使用Windows作为我的操作系统,并与一位正在使用Mac的朋友一起开展项目。他在我们的Github上签了代码。

我试图把他所做的一切都搞砸了,但是第三方代码的“文件名太长”错误就中止了。

我该怎么办?

7 个答案:

答案 0 :(得分:187)

Git cannot create a filedirectory with a long path上的msysgit常见问题解答似乎不是最新的,因为它仍然链接到旧的msysgit ticket #110。但是,根据后来的ticket #122,问题已在msysgit 1.9中修复,因此:

  1. 更新到msysgit 1.9(或更高版本)
  2. 启动Git Bash
  3. 转到您的Git存储库,该存储库会受到影响。长途径问题
  4. 使用git config core.longpaths true
  5. 启用长路径支持

    到目前为止,它对我很有用。

    请注意comment on the ticket #122

    中的重要提示
      

    不要回到这里并抱怨它打破了Windows资源管理器,   cmd.exe,bash或您正在使用的任何工具。

答案 1 :(得分:61)

Solution1 - 通过运行此命令设置全局配置:

git config --system core.longpaths true

Solution2 - 或者您可以直接编辑您的特定git配置文件,如下所示:

YourRepoFolder - > .git - >配置:

[core]
    repositoryformatversion = 0
    filemode = false
    ...
    longpaths = true        <-- (add this line under core section)

解决方案3 - 克隆新存储库时:here

答案 2 :(得分:20)

迟了几年,但我想补充一点,如果你需要一举这样做(就像我一样)你可以在克隆命令中设置配置设置。试试这个:

git clone -c core.longpaths=true <your.url.here>

答案 3 :(得分:11)

打开your.gitconfig文件以添加longpaths属性。所以它看起来如下:

[core]
symlinks = false
autocrlf = true
longpaths = true

答案 4 :(得分:5)

作为在Windows上不断使用java存储库遇到此问题的人,最好的解决方案是安装Cygwin(https://www.cygwin.com/)并在所有&gt;下使用其git安装。 devel&gt;饭桶。

这是我遇到的最佳解决方案的原因是因为Cygwin管理长路径名称,因此其他提供的命令会受益。例如:find,cp和rm。相信我,当您必须删除Windows中太长的路径名时,真正的问题就开始了。

答案 5 :(得分:3)

尝试使文件更接近文件系统根目录。更多细节:由于技术原因,Git for Windows cannot create files or directories when the absolute path is longer than 260 characters

答案 6 :(得分:2)

在Windows上,以管理员身份运行“ cmd”并执行命令。

DataConsumerB

或者您必须在安装了git的文件夹中使用chmod。

或手动通过转到路径“ Git \ mingw64 \ etc”手动更新文件

"C:\Program Files\Git\mingw64\etc>"
"git config --system core.longpaths true"