user.name
не является именем пользователя, а user.password
не существует. Из документации для user.name
:
Обратите внимание, что формы имен этих переменных условно относятся к какой-либо форме личного имени. См. git -commit (1) и раздел переменных среды git (1) для получения дополнительной информации об этих настройках и опции credential.username
, если вы ищете вместо этого учетные данные для аутентификации.
То есть user.name
должно быть вашим (человеческим) именем, а не именем пользователя.
В результате вам предлагается ввести имя пользователя и пароль, но вы получаете ошибку, потому что есть нет TTY, на котором вам подсказать. В вашей системе учетные данные, вероятно, уже сохранены в вашем помощнике по учетным данным, поэтому вы не видите подсказку.
Если вы хотите клонировать другой репозиторий, вы должны сначала создать личный токен доступа и сохранить его. это в секретном хранилище вашей системы CI (например, в качестве переменной среды с именем TOKEN
). PAT не меняются, когда ваш пароль меняется, могут быть отозваны и повернуты независимо от вашего пароля и более безопасны, чем большинство паролей.
Затем в инструменте CI выполните следующее:
$ git config credential.helper '!f(){echo username=token; echo "password=$TOKEN";};f'
Это настроит помощника по учетным данным для использования токена, который находится в переменной окружения TOKEN
, в качестве пароля. Убедитесь, что для вашей операции клонирования установлена переменная окружения, и все должно работать.