2

Я пытаюсь установить gitlab из этого руководства на Ubuntu 14.04 Server. Стоит также упомянуть, что я за http-прокси. У меня проблемы с этой строкой, в частности:

sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 6-9-stable gitlab

У меня установлена переменная окружения hhtp_proxy но согласно некоторым прочтениям о том, что я сделал, вам нужно установить детали прокси для git независимо, выполнив следующую команду:

git config --global http.proxy http://some.proxy.com:8080

Поэтому с этим набором я хотел попытаться понять синтаксис sudo -u <user> -H <command> .

При чтении справочной страницы sudo для флагов -u -H, -u будет означать, что команда будет выполнена от имени пользователя git. -H устанавливает переменную среды HOME равной homedir целевого пользователя. Это все имеет смысл, поскольку предполагается, что пользователь git является владельцем службы gitlab.

git clone <url to repo> -b 6-9-stable gitlab извлечет хранилище по указанному URL-адресу, назначит его новой ветви с именем 6-9-stable и поместит все содержимое репозитория в каталог gitlab.

Проблема в том, когда я бегу:

`sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 6-9-stable gitlab

Сбой соединения со следующим выводом:

Cloning into 'gitlab'...
fatal: unable to access 'https://gitlab.com/gitlab-org/gitlab-ce.git/': Failed to connect to gitlab.com port 443: Connection timed out

Я также попытался сбросить s в https, так как я знаю, что порт 443 является синонимом SSL/TLS, но я все еще получаю тот же вывод ... который я не совсем понимаю.

Однако, если я просто бегу:

git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 6-9-stable gitlab

Репо скачивается нормально. Теперь я знаю, что могу просто переместить его в ~/git и выполнить соответствующий chmod / chown, но мне бы очень хотелось понять, почему я вижу это поведение и как получить желаемый результат, используя sudo -u <user> -H <command> синтаксис.

Спасибо заранее :)

1 ответ1

1

Очевидно, команда git config --global http.proxy http://some.proxy.com:8080 работает только для отдельных пользователей.

Если вы используете вызов git clone с пользователем git, вы должны использовать вызов git config с пользователем git .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .