для npm установка из папки выдает ошибку git для пакетов Викимедиа, несмотря на то, что зависимости уже установлены (общий хостинг) - PullRequest
0 голосов
/ 09 апреля 2019

Установка Npm на пакеты Викимедиа (parsoid, restbase, плюс service-runner и ограничение) завершается неудачно с ошибкой git, несмотря на то, что заранее скопировал исходные файлы и работает

npm install <folder> или же npm install из фактической папки, в которой есть package.json или

npm install -g --only=prod --verbose limitation

Зависимости, приводящие к ошибкам, иногда являются прямыми, иногда - зависимостями.

Настройка - linux / CentrOS 6

  • Установленный git провайдером на общем хосте, переустановка git не удалась

  • без прав администратора с общего хостинга

  • узел 11.12.0, npm 6.9.0

  • сбой только пакетов Викимедиа, но не все пакеты Викимедиа

Предпринятые шаги - установка только производственных зависимостей

  • npm cache verify плюс удаление соответствующих папок node_module и .npm перед установкой

  • редактирование package.json для замены ссылки git для зависимостей только версиями, например для kad 2.5.1

  • последняя версия npm и узла

  • переустановка узла / nvm / npm

  • также не удалось с узлом v11.11.0

  • использование списка npm для проверки проблем с зависимостями и их устранения заранее

  • исправление git путем замены на протокол http или git завершилось неудачно с той же ошибкой

Зависимости, которые мы ищем, включают

  • pegjs

  • кад

  • тип содержимого

Пример журнала ошибок: пакет ограничений (3 зависимости, включая bluebird, kad, readable-stream)

135 http fetch GET 200 http://registry.npmjs.org/readable-stream 17ms (from cache) 136 silly pacote range manifest for readable-stream@^2.0.5 fetched in 25ms 137 silly resolveWithNewModule readable-stream@2.3.6 checking installable status 138 silly fetchPackageMetaData error for kad@git+https://github.com/wikimedia/kad.git#master Error while executing: 138 silly fetchPackageMetaData /usr/local/cpanel/3rdparty/lib/path-bin/git ls-remote -h -t https://github.com/wikimedia/kad.git 138 silly fetchPackageMetaData 138 silly fetchPackageMetaData fatal: Unable to find remote helper for 'https' 138 silly fetchPackageMetaData 138 silly fetchPackageMetaData exited with error code: 128 139 timing stage:rollbackFailedOptional Completed in 1ms 140 timing stage:runTopLevelLifecycles Completed in 4749ms 141 verbose stack Error: exited with error code: 128 141 verbose stack at ChildProcess.<anonymous> (/home/mousey/.nvm/.nvm/versions/node/v11.12.0/lib/node_modules/npm/node_modules/pacote/lib/util/finished.js:12:19) 141 verbose stack at ChildProcess.emit (events.js:197:13) 141 verbose stack at maybeClose (internal/child_process.js:988:16) 141 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:265:5) 142 verbose cwd /home/mousey/.nvm/.nvm/versions/node/v11.12.0/lib/node_modules 143 verbose Linux 2.6.32-896.16.1.lve1.4.54.el6.x86_64 144 verbose argv "/home/mousey/.nvm/.nvm/versions/node/v11.12.0/bin/node" "/home/mousey/.nvm/.nvm/versions/node/v11.12.0/bin/npm" "install" "-g" "--save" "--verbose" "--only=prod" "service-runner" 145 verbose node v11.12.0 146 verbose npm v6.9.0 147 error Error while executing: 147 error /usr/local/cpanel/3rdparty/lib/path-bin/git ls-remote -h -t https://github.com/wikimedia/kad.git 147 error 147 error fatal: Unable to find remote helper for 'https' 147 error 147 error exited with error code: 128 148 verbose exit [ 1, true ]

Ответы [ 2 ]

1 голос
/ 09 апреля 2019

Путь Git был задан неправильно, что вызвало ошибку git:

Unable to find remote helper for 'https'

решение .

git --exec-path выявило проблему Git

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

0 голосов
/ 09 апреля 2019

Попробуйте добавить это в ваш файл .gitconfig. В npm есть известная проблема с удаленными git + http / ssh.

  [url "https://github.com/"]
     insteadOf = git@github.com:
     insteadOf = git://github.com/
     insteadOf = git+https://github.com/
     insteadOf = git+ssh://git@github.com:
     insteadOf = ssh://git@github.com:
     insteadOf = ssh+https://git@github.com/

Ссылка для справки

...