клон git отказывает с "плохим объектом" под msys2 в VM

когда я пытаюсь git clone проект github под моим Windows 7-MSYS2 виртуальную машину VirtualBox, но это не удается:

laurent@Win7 ~/Dev
$ LANG="en" GIT_TRACE="1" git clone git://github.com/nanomsg/nanomsg.git
trace: built-in: git 'clone' 'git://github.com/nanomsg/nanomsg.git'
Cloning into 'nanomsg'...
trace: run_command: 'index-pack' '--stdin' '-v' '--fix-thin' '--keep=fetch-pack 9412 on Win7' '--check-self-contained-and-connected'
remote: Reusing existing pack: 10643, done.
trace: exec: 'git' 'index-pack' '--stdin' '-v' '--fix-thin' '--keep=fetch-pack 9412 on Win7' '--check-self-contained-and-connected'
trace: built-in: git 'index-pack' '--stdin' '-v' '--fix-thin' '--keep=fetch-pack 9412 on Win7' '--check-self-contained-and-connected'
remote: Total 10643 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (10643/10643), 5.60 MiB | 244.00 KiB/s, done.
Checking connectivity... trace: run_command: 'rev-list' '--objects' '--stdin' '--not' '--all'
trace: exec: 'git' 'rev-list' '--objects' '--stdin' '--not' '--all'
trace: built-in: git 'rev-list' '--objects' '--stdin' '--not' '--all'
fatal: bad object e07b5841092eb3bd3b97188f09819511afc6cbed
fatal: remote did not send all necessary objects

хотя, под моим хостом Gentoo, это работает:

laurent@Gentoo ~/Documents/tmp $ LANG="en" GIT_TRACE="1" git clone git://github.com/nanomsg/nanomsg.git
trace: built-in: git 'clone' 'git://github.com/nanomsg/nanomsg.git'
Cloning into 'nanomsg'...
trace: run_command: 'index-pack' '--stdin' '-v' '--fix-thin' '--keep=fetch-pack 24970 on Gentoo'
trace: exec: 'git' 'index-pack' '--stdin' '-v' '--fix-thin' '--keep=fetch-pack 24970 on Gentoo'
trace: built-in: git 'index-pack' '--stdin' '-v' '--fix-thin' '--keep=fetch-pack 24970 on Gentoo'
remote: Reusing existing pack: 10643, done.
remote: Total 10643 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (10643/10643), 5.60 MiB | 243.00 KiB/s, done.
Resolving deltas: 100% (6433/6433), done.
trace: run_command: 'rev-list' '--objects' '--stdin' '--not' '--all'
Checking connectivity... trace: exec: 'git' 'rev-list' '--objects' '--stdin' '--not' '--all'
trace: built-in: git 'rev-list' '--objects' '--stdin' '--not' '--all'
done

Я пробовал несколько раз с тем же результатом. Я попытался клонировать другой проект, с тем же результатом. Я предполагаю, что внутри виртуальной машины это не проблема. После некоторого исследования это может быть вызвано текстовой / двоичной разницей между Linux и Windows относительно дополнительного CR для Windows. Но я пока не смог найти решение.

для информации, я установил git внутри MSYS2 с его менеджером пакетов pacman. git, установленный в MSYS (2), должен быть прав ? Или я должен установить msysgit вместо ?

16
задан lalebarde
01.12.2022 18:17 Количество просмотров материала 3594
Распечатать страницу

1 ответ

решение dtech работает: use msysgit,"официальная версия Git для Windows".

плохой момент в том, что msysgit использует свой собственный слой MSYS. Программа установки не предлагает интеграцию с существующей программой установки MSYS. Проект существует здесь, который нацелен на обеспечение такой интеграции, но из его списка задач кажется, что все автотесты Git еще не проходят. Это предварительно выпущенный v0.2.

1
отвечен lalebarde 2022-12-03 02:05

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

Ваш ответ

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

Имя
Вверх