Git вытянуть с ошибкой имя файла слишком долго

Я использую Windows как свою ОС и работаю над проектом с другом, который использует Mac. Он проверил код на наш Гитуб.

Я пытался git вытащить все, что он сделал, и он прервал ошибки с длинным "filename" стороннего кода.

Что я могу сделать?

Ответ 1

Часто задаваемые вопросы по msysgit в Git не могут создать файловый каталог с длинным путем, который не выглядит актуальным, так как он все еще ссылается на старый билет msysgit # 110. Однако, согласно более позднему билету # 122 проблема была исправлена в msysgit 1.9, таким образом:

  1. Обновление до msysgit 1.9 (или позже)
  2. Запустить Git Bash
  3. Перейдите в свой Git-репозиторий, который "страдает" от проблемы длинных путей
  4. Включить поддержку длинных путей с помощью git config core.longpaths true

Пока что это сработало для меня очень хорошо.

Будьте в курсе важного уведомления в комментарии к билету № 122

не возвращайтесь сюда и не жалуйтесь, что он ломает Windows Explorer, cmd.exe, bash или любые другие инструменты, которые вы используете.

Ответ 2

Solution1 - установите глобальную конфигурацию, выполнив следующую команду:

git config --system core.longpaths true

Solution2 - или вы можете напрямую отредактировать свой конфигурационный файл git, как показано ниже:

YourRepoFolder → .git → config:

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

Solution3 - при клонировании нового репозитория: здесь.

Ответ 3

Несколько лет спустя, но я хотел бы добавить, что если вам нужно сделать это одним махом (как и я), вы можете установить настройки конфигурации во время команды clone. Попробуйте следующее:

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

Ответ 4

Откройте файл your.gitconfig, чтобы добавить свойство longpaths. Поэтому он будет выглядеть следующим образом:

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

Ответ 5

Как тот, кто постоянно сталкивался с этой проблемой с репозиториями java в Windows, лучшим решением является установка Cygwin (https://www.cygwin.com/) и используйте его git установку под всеми > devel > git.

Причина, по которой это лучшее решение, с которым я столкнулся, заключается в том, что Cygwin управляет именами длинного пути, поэтому выигрывают другие предоставленные команды. Пример: find, cp и rm. Поверьте мне, настоящая проблема начинается, когда вам нужно удалить имена путей, которые слишком длинны в Windows.

Ответ 7

В Windows запустите "cmd" от имени администратора и выполните команду.

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

или вы должны использовать chmod для папки, где установлен git.

или вручную обновите файл, перейдя по пути "Git\mingw64\etc"

[http]
    sslBackend = schannel
[diff "astextplain"]
    textconv = astextplain
[filter "lfs"]
    clean = git-lfs clean -- %f
    smudge = git-lfs smudge -- %f
    process = git-lfs filter-process
    required = true
[credential]
    helper = manager
**[core]
    longpaths = true**