git clone завершается с ошибкой: connect ECONNREFUSED 127.0.0.1:80
Я использую isomorphic-git для проекта, и при попытке использоватьgit.clone
я получаю ошибкуError: connect ECONNREFUSED 127.0.0.1:80
.
Это простое воспроизведение того, что я пытаюсь сделать:
import * as git from 'isomorphic-git';
import * as fs from 'fs';
import * as http from 'http';
const git_options = {
fs,
http,
dir: config.git_dir, //yes this is defined
};
const remote_repo = 'dr-vortex/blankstorm';
await git.clone({ ...git_options, url: `https://github.com/${remote_repo}.git` });
Я видел этот вопрос, используя канонический git, и проверил конфигурацию с помощью isomorphic-git, и ни одно из значений не установлено.
После перехода к месту назначения репозитория я нашел полный репозиторий git без рабочего дерева. делатьgit pull
все исправляет.
Я также попытался установить параметр ref в конфигурации (на случай, если он пытался вытащить несуществующую основную ветку, поскольку я использую основную)
Есть ли способ исправить ошибку, чтобы git pull не требовался?
1 ответ
Node.js'http
не является поддерживаемым HTTP-клиентом. Вы должны использовать HTTP-клиент, реализующий задокументированный интерфейс: https://isomorphic-git.org/docs/en/http
isomorphic-git
предоставляет два HTTP-клиента. Вы можете использовать предоставленный HTTP-клиент Node.js:
import * as git from 'isomorphic-git';
import * as fs from 'fs';
import * as http from 'isomorphic-git/http/node/index.js';
const git_options = {
fs,
http,
dir: config.git_dir, //yes this is defined
};
const remote_repo = 'dr-vortex/blankstorm';
await git.clone({ ...git_options, url: `https://github.com/${remote_repo}.git` });