2

Я могу нажать на git@github.com:wting/repo.git без запроса пароля, поскольку он использует мой ssh-agent. Однако, когда я нажимаю на https://github.com/wting/repo.git он всегда запрашивает имя пользователя и пароль.

Эту проблему можно несколько облегчить, используя кеширование паролей, но я бы предпочел не использовать это.

В основном это появляется при использовании гистов, потому что они показывают только https ссылку (например, https://gist.github.com/123.git). Я не хочу изменять URL-адрес каждого клона, который я клонирую, чтобы использовать git@gist.github.com:123.git .

Как мне настроить его так, чтобы git использовал мой ssh-agent при отправке на адрес https?

Соответствующий URL:Почему GitHub рекомендует HTTPS через SSH?

3 ответа3

1

Я прибег к написанию функции-оболочки git:

function gc {
    if [[ ${1} =~ "github.com" ]] && [[ ${1} =~ "https" ]]; then
        git clone ${${1/https:\/\//git@}/\//:} ${@:2}
    else
        git clone ${@}
    fi
}
0
  1. поместите ваш открытый ключ на github.com
  2. используйте ssh -T git@github.com чтобы определить, работает ли открытый ключ
  3. под вашим репозиторием git remote set-url origin git@github.com:<user>/<project>.git
  4. git push
0

Установите это в своей учетной записи GitHub.

По вашей собственной ссылке это кажется неподдерживаемым, я думаю, вы могли бы написать небольшую функцию в .bashrc, чтобы переписать пульты в стиле git.

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