Сегодня я обновился до последней версии git (2.39.0).
Когда я извлекаю данные из источника с помощью GitExtensions (4.0.0.15569), я получаю сообщение об ошибке:
"C:\Program Files\Git\bin\git.exe" pull --progress --jobs=0 "origin"
BUG: run-command.c:1521: you must provide a non-zero number of processes!
Кто-нибудь видел эту ошибку раньше? Как я могу решить проблему?
Я только что проверил, и это сработало с 2.37.2. Можете проверить, что написано в git help pull о --jobs?
Из документов: количество параллельных дочерних элементов, которые будут использоваться для всех форм выборки. Если была указана опция --multiple, различные удаленные устройства будут загружаться параллельно. Если выбрано несколько подмодулей, они будут загружаться параллельно. Чтобы управлять ими независимо, используйте настройки конфигурации fetch.parallel и submodule.fetchJobs (см. git-config(1)). Как правило, параллельные рекурсивные и множественные удаленные выборки выполняются быстрее. По умолчанию выборки выполняются последовательно, а не параллельно.
Я не вижу там ничего, что означало бы, что 0 больше не действует.
Я попробую понизить версию git. Возможно сейчас есть несовместимость между двумя программами.
Кстати, это та же ошибка для получения из источника.
Что произойдет, если вы попытаетесь использовать ненулевое значение?
Если бы я знал, куда это поместить, я бы так и сделал. В диалоговом окне настроек расширения GIT нет настроек.
Он все еще работает с 2.38.1. Поэтому я предполагаю, что это ошибка (или намеренное изменение) в новой версии GIT.
Вот связанная с этим проблема - судя по всему, изменение в git было преднамеренным. Уже есть исправление для расширений git, но оно еще не выпущено.
Обновление: я могу подтвердить, что версия 4.0.1 расширений git устраняет проблемы (выпущена сегодня).





Проблема, как отметили некоторые, связана с опцией --jobs=0. Укажите здесь ненулевое значение (например, 1). Однако это ошибка Git: если 0 недопустимо, должно быть напечатано другое сообщение об ошибке. Если ноль означает «использовать значение по умолчанию» (как это было в более ранних версиях Git), Git должен был выбрать значение по умолчанию.
Каждый раз, когда вы видите, что Git печатает:
BUG: <rest of stuff>
вы можете быть уверены, что просто нашли ошибку в Git. Это не то, что вы сделали неправильно, Git сломан. Это может быть тривиальной ошибкой (как эта), но она была обнаружена самостоятельно как ошибка. Таким образом, вы можете обойти это, но это все еще ошибка в Git.
Это было преднамеренное изменение в git: github.com/git/git/commit/…
@RussKie: действительно, и мы можем видеть из сообщения коммита, что Ævar думал, что они получили все случаи командной строки уровня пользователя «jobs = 0». Но они этого не сделали! Если намерение состоит в том, чтобы сделать --jobs=0 недействительным в качестве параметра командной строки, Git должен напечатать сообщение в строке «фатальное: значение --jobs должно быть не менее 1». Если он печатает «ОШИБКА:», это означает, что кто-то что-то пропустил.
Обновление до Git Extensions 4.0.1.15887 устраняет проблему.
Похоже, они обновили кнопку вытягивания, чтобы использовать следующие флаги:
C:\Program Files\Git\bin\git.exe" -c fetch.parallel=0 -c submodule.fetchJobs=0 pull --progress "origin
Я думаю
--jobs=0не имеет смысла.