git fatal: пакет содержит 1 неразрешенную дельту (сбой пакета индекса)

у меня очень странная и не очень покрытая проблема с конкретным сервером сборки Windows (Jenkins Slave).

в Jenkins у меня есть работа, которая извлекает последний код из определенной ветви.

фактическая команда, которую пытается выполнить git:

git fetch -t origin +refs/heads/*:refs/remotes/origin/*

перед несколькими часами, после хорошей работы в течение 1 месяца, внезапно работа завершается неудачей с этой ошибкой:

ERROR: Problem fetching from origin / origin - could be unavailable. Continuing anyway
hudson.plugins.git.GitException: Command "C:Program Files (x86)Gitbingit.exe fetch -t origin +refs/heads/*:refs/remotes/origin/*" returned status code 128:
stdout: 
stderr: fatal: pack has 1 unresolved delta
fatal: index-pack failed

Я попытался найти некоторые сообщения об этом через интернет, но ничего не вышло вверх...

то, что я уже пробовал:

  1. удалить git и установить снова
  2. удалить рабочую область (которая также удаляется заданием, поскольку выбрана опция "стереть")"
  3. удалить все рабочее пространство из системы
  4. git fsck-нет интересных результатов
  5. git verify-pack-нет интересных результатов
  6. git index-pack + соответствующий файл пакета-нет интересных результатов здесь, как ну

еще немного (надеюсь, важной) информации:

  1. С этого сервера, когда я работаю через CMD / GitBash - та же проблема сохраняется
  2. С других серверов / ПК я могу выполнить эту команду с тем же репозиторием git, что и меня беспокоит...
  3. другие задачи, которые работают с различными Git Repo на том же сервере сборки работает свободно.

Я потерялся. Может кто-нибудь пролить свет на это?

3
задан Karan
16.03.2023 12:36 Количество просмотров материала 3153
Распечатать страницу

2 ответа

первопричина всего этого беспорядка мне до сих пор неизвестна.

но теперь мне удалось преодолеть это так:

в задании Jenkins в конфигурации git SCM были включены следующие лаги:

  1. стереть рабочее пространство перед сборкой
  2. использовать мелкий клон

удаление 2 из них решило проблему.

потом, возможно положить их назад и оно все еще будет работа.

странно!!!

2
отвечен GorovDude 2023-03-17 20:24

причина, по которой у меня была эта проблема была git clone было сделано "неглубоко", следовательно, у него не было полной истории коммитов (следовательно, fetch не мог видеть полную историю для вычисления дельт).

Проверьте журнал Git в рабочем дереве, которое вы пытаетесь загрузить, у него не должно быть полной истории - у меня было всего несколько коммитов, перечисленных с самым старым в списке, говоря, что он добавляет "новый файл" для всех файлов в репозитории - раздавленный, я думаю.

убедитесь, что нет GIT_DEPTH переменная установлена, то

git pull --unshallow

или

git pull 

и повторите попытку.

1
отвечен user2720924 2023-03-17 22:41

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх