## Проблема с go get пакета, находящегося в приватном репозитории Суть проблемы go get может не дать склонировать из приватного репозитория. К этому могут привести несколько проблем ### fatal: could not read Password for Если произошло такое, знначит go get пытается получить пакет по https, gitlab запрашивает пароль, но go get в авторизацию по паролю не особо умеет, поэтому и выдаёт такую ошибку. Что нужно сделать 1) убедиться, что в gitlab добавлены ключи для доступа по ssh. В принципе, по https не получаем пакеты и ничего не клонириуем, чисто ssh. Чисто статистически с ним проблем меньше 2) Если не добавлены, то сгенерировать и добавить. Если устройств, с которых работаете несколько, то лучше добавить отдельный ключ для каждого устройтсва 3) В linux системе отредактировать ~/.gitconfig, добавив правило замены урла или заменив, если такое уже присутствует ``` [url "git@penahub.gitlab.yandexcloud.net:"] insteadOf = https://penahub.gitlab.yandexcloud.net/ ``` Что тут происходит - git помнит правила insteadOf в порядке указанном в гитконфиге. При столкновении с урлом, которых подходит под правило insteadOf, он меняет его на url указанный в секции, т.е. просто реплейсит. При этом он использует первое найденное правило, ибо если ты уже нашел способ разрешить проблему, как понять, что нужно искать дальше, если ты тупой кусок кода? ### Host key verification failed. Скорее всего, у вас в системе для ssh используется не та пара, кототрая сохранена в gitlab. Стоит обновить значения. в linux пара ключей находится обычно в ~/.ssh. Советую генерить id_rsa, ибо с другими форматами ключей иногда бывают проблемы, суть которых я ещё не понял ### Прочие советы Ещё бывают проблемы от того, что go get по умолчанию ищет пакеты в общем открытом хранилище, типа sumdb, точнее не помню. Ему надо явно указать, какие репозитории находятся в приватных репозиториях, путём установки переменной окружения GOPRIVATE, где через запятую перечислить пути до репозиториев с используемыми приватными пакетами. И, для удобства, советую добавить экспорт этой переменной окружения в profile или ~/.(shellname)rc