С Git версии 1.7.9 и выше
Начиная с Git 1.7.9 (выпущен в конце января 2012 года), в Git существует аккуратный механизм, позволяющий избежать необходимости постоянно вводить пароль для HTTP / HTTPS, называемый помощниками по учетным данным . (Спасибо dazonic за указание этой новой функции в комментариях ниже.)
С Git 1.7.9 или новее вы можете просто использовать одного из следующих помощников по учетным данным:
git config --global credential.helper cache
... что говорит Git хранить ваш пароль в кэше в памяти (по умолчанию) 15 минут. Вы можете установить более длительное время ожидания с помощью:
git config --global credential.helper "cache --timeout=3600"
(Этот пример был предложен на странице справки GitHub для Linux .) При желании вы также можете хранить свои учетные данные постоянно, см. Другие ответы ниже.
Справка GitHub также предлагает , что если вы используете Mac OS X и используете Homebrew для установки Git, вы можете использовать встроенное хранилище ключей Mac OS X с:
git config --global credential.helper osxkeychain
Для Windows есть помощник, называемый Git Credential Manager для Windows или , закрученный в msysgit .
git config --global credential.helper wincred # obsolete
С Git для Windows 2.7.3 + (март 2016):
git config --global credential.helper manager
Для Linux вы можете использовать gnome-keyring
(или другую реализацию ключей, такую как KWallet).
С версиями Git до 1.7.9
В версиях Git до 1.7.9 этот более безопасный вариант недоступен, и вам потребуется изменить URL-адрес, используемый вашим пультом origin
, чтобы включить пароль следующим образом:
https://you:password@github.com/you/example.git
... другими словами с :password
после имени пользователя и перед @
.
Вы можете установить новый URL для вашего origin
пульта с помощью:
git config remote.origin.url https://you:password@github.com/you/example.git
Убедитесь, что вы используете https
, и вы должны знать, что если вы сделаете это, ваш пароль GitHub будет сохранен в виде открытого текста в вашем каталоге .git
, что, очевидно, нежелательно.
С любой версией Git (ну, начиная с версии 0.99)
Альтернативный подход состоит в том, чтобы поместить ваше имя пользователя и пароль в файл ~/.netrc
, хотя, как и в случае с сохранением пароля в удаленном URL-адресе, это означает, что ваш пароль будет храниться на диске в виде простого текста и, следовательно, будет меньше безопасно и не рекомендуется. Однако, если вы хотите использовать этот подход, добавьте следующую строку в ваш ~/.netrc
:
machine <hostname> login <username> password <password>
... заменив <hostname>
именем хоста сервера, а <username>
и <password>
своим именем пользователя и паролем. Также не забудьте установить ограничительные разрешения файловой системы для этого файла:
chmod 600 ~/.netrc
Обратите внимание, что в Windows этот файл должен называться _netrc
, и вам может потребоваться определить переменную среды% HOME% - для получения более подробной информации см .: