2015-09-28 3 views
2

Учитывая мой адрес электронной почты и имя пользователя включены в ~/.gitconfig:«мерзавец конфиг -l» показывает мое имя пользователя/набор электронной почты, но мерзавец толчок запрашивает имя пользователя

$cat ~/.gitconfig 
[user] 
    name = MyFirst MyLast 
    email = [email protected] 

И git config -l «видит» их:

$git config -l 
user.name=MyFirst MyLast 
[email protected] 

Почему именно git pushне посмотреть на них?

$git push origin master 
Username for 'https://github.com': 

Вот немного больше информации:

Статус:

git status 
On branch master 
Your branch is based on 'origin/master', but the upstream is gone. 
    (use "git branch --unset-upstream" to fixup) 
Untracked files: 
    (use "git add <file>..." to include in what will be committed) 

Remotes:

git remote -v 
origin https://github.com/<owner>/<repo> (fetch) 
origin https://github.com/<owner>/<repo> (push) 
+0

Git не предполагает, что ваше имя в '~/.gitconfig' совпадает с вашим именем пользователя github. Программное обеспечение git - отдельная вещь с сайта github. Я рекомендую добавлять ключи SSH к вашей учетной записи github, чтобы вам не приходилось вводить ваше имя пользователя/пароль каждый раз, когда вы нажимаете. – Adrian

ответ

3

Это две совершенно разные части данных, которые не связаны

Имя пользователя в вашей конфигурации для таких вещей, как установка автора коммитов.

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

Git не предполагает, что настроенное имя пользователя совпадает с именем пользователя удостоверения подлинности.

Это хорошая вещь. Например, очень реальный пример:

Мой сконфигурировано имя пользователя в Git: Thomas Stringer

Мой GitHub имя пользователя: tstringer

Если предполагалось, что будет весьма раздражающим для меня для переопределения или перенастройки.

+1

Да, я забыл использовать ssh (в сочетании с ~/.ssh/config). 'git remote set-url origin ssh: //[email protected]/ /' – javadba

1

Это больше комментарий/дополнение к ответу (который будет принят) по @Thomas Стрингер:

Способ справиться с этим нам SSH (в сочетании с ~/.ssh/конфигурации) ,

git remote set-url origin ssh://[email protected]/<owner>/<repo> 
Смежные вопросы