Я создал репозиторий GitHub, а затем клонировал его, используя SSH:
git clone git@github.com:BenReilly/all-the-characters.git
Я добавил несколько файлов.
git add .
git commit -m "some message"
git push
, в результате меня попросили ввести имя пользователя и пароль.Что само по себе было странно, но я все равно вошел в них.Тогда я получаю:
> remote: Anonymous access to BenReilly/all-the-characters.git denied.
> fatal: Authentication failed for 'https://github.com/BenReilly/all-the-characters.git/'
HTTPS?Что?
git remote -v
> origin https://github.com/BenReilly/all-the-characters.git (fetch)
> origin https://github.com/BenReilly/all-the-characters.git (push)
тьфу.
git remote set-url origin git@github.com:BenReilly/all-the-characters.git
git remote -v
> origin https://github.com/BenReilly/all-the-characters.git (fetch)
> origin https://github.com/BenReilly/all-the-characters.git (push)
это потому что его нет в моей osxkeychain?
Просто чтобы убедиться, что я сделал ssh-add -K ~/.ssh/<key id>
и убедился, что файл ~/.ssh/config
определен.Никаких изменений в поведении.Я также проверил, что ключ находится в моих настройках GitHub.
Я нахожусь на MacOS Mojave (10.14.1), использую Git версии 2.17.2.
Почему Git заставляет использовать HTTPS и игнорируетмои попытки установить адрес SSH?
ETA .git/config
file
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = git@github.com:BenReilly/all-the-characters.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master