Я хочу автоматически использовать push и pull в GitExtension, не вводя каждый раз пользователя и пароль в приглашении.
Как я могу сохранить свои учетные данные в GIT?
Запускайте
git config --global credential.helper store
затем
git pull
укажите имя пользователя и пароль, и эти данные будут впоследствии запомнены. Учетные данные хранятся в файле на диске с правами "только пользовательское чтение/запись", но все еще в открытом виде.
Если вы хотите изменить пароль позже
git pull
Не получится, потому что пароль неверен, git удалит пользователя+пароль из файла ~/.git-credentials
, так что теперь запустите заново
git pull
для ввода нового пароля, чтобы все работало как раньше.
Вы можете использовать git config
для включения хранения учетных данных в git.
git config --global credential.helper store
При выполнении этой команды, при первом извлечении или выталкивании из удаленного репозитория, вас'спросят об имени пользователя и пароле.
После этого для последующих взаимодействий с удаленным хранилищем вам не нужно будет указывать имя пользователя и пароль.
Формат хранения - файл .git-credentials
, хранящийся в открытом виде.
Также вы можете использовать другие помощники для git config credential.helper
, а именно кэш памяти:
git config credential.helper cache <timeout>
который принимает необязательный параметр timeout
,
определяющий, как долго учетные данные будут храниться в памяти. При использовании этого помощника учетные данные никогда не будут касаться диска и будут удалены по истечении указанного таймаута. Значение по умолчанию
равно 900 секунд (15 минут)
.
ПРЕДУПРЕЖДЕНИЕ : Если вы используете этот метод, пароли ваших учетных записей git будут сохранены в формате plaintext
в глобальном файле .gitconfig
, например, в linux это будет /home/[имя пользователя]/.gitconfig
.
Если это нежелательно для вас, используйте `ssh-ключ для ваших учетных записей.
Вы можете задать имя пользователя и пароль следующим образом:
git config --global user.name "your username"
git config --global user.password "your password"
В Terminal введите следующее:
# Set git to use the credential memory cache
git config --global credential.helper cache
По умолчанию Git будет кэшировать ваш пароль в течение 15 минут.
Чтобы изменить таймаут кэширования пароля по умолчанию, введите следующее:
# Set the cache to timeout after 1 hour (setting is in seconds)
git config --global credential.helper 'cache --timeout=3600'
Вы можете редактировать~/.файл gitconfig хранит настройки в магазина свой полномочия
sudo nano ~/.gitconfig
Который уже должны были
[user]
email = [email protected]
user = gitUSER
Вы должны добавить в нижней части этого файла.
[credential]
helper = store
Причина, по которой я рекомендую этот вариант, потому что это глобальный и если в какой-то момент вам нужно убрать эту опцию, вы знаете, куда идти и менять его.
ИСПОЛЬЗОВАТЬ ТОЛЬКО ЭТУ ОПЦИЮ В СВОЙ ЛИЧНЫЙ КОМПЬЮТЕР.
Затем, когда вы вытащите | клон| введите пароль ты этакий, в общем, пароль будет сохранен в `~/.ГИТ-учетные данные в формате
https://GITUSER:[email protected]
ГДЕ ДОМЕН.ХХХ МОЖЕТ БЫТЬ GITHUB.COM | BITBUCKET.ORG | ДРУГИЕ
См. документы
Для глобальной установки, откройте терминал (из любой точки) выполните следующие действия:
git config --global user.name "your username"
git config --global user.password "your password"
К тому, любой локальный git РЕПО, что у вас на компьютере будут использовать эту информацию.
Вы можете индивидуально config для каждого репозитория, выполнив:
ГИТ конфигурации пользователя.именем "логин"и ГИТ конфигурации пользователя.пароль на "пароль"и
Это влияет только на эту папку (потому что ваша конфигурация местное).
Просто поместите ваши данные в URL, как это:
https://Username
:пароль@github.com/myRepoDir/myRepo.git
Вы можете магазин он такой:
в Git дистанционного добавить myrepo https://Userna...
...пример для Использовать он:
git толчок myrepo мастер
Теперь это список псевдонимы, URL-адрес:
git удаленного -в
...и что команду, чтобы удалить один из них:
git удаленного РМ myrepo
Вы можете использовать git-учетных данных-хранилище для хранения ваших паролей в незашифрованном виде на диске, защищены только разрешения файловой системы.
Пример
$ git config credential.helper store
$ git push http://example.com/repo.git
Username: <type your username>
Password: <type your password>
[several days later]
$ git push http://example.com/repo.git
[your credentials are used automatically]
Вы можете проверить учетные данные, хранящиеся в файле `~/.ГИТ-полномочия
Для получения дополнительной информации посетите ГИТ-учетных-магазин - помощник для хранения учетных данных на диске
Вам будет более безопасным, если вы используете SSH аутентификация, чем имя и пароль.
Если вы используете Mac, аутентификация SSH-клиент интегрирован в ОС macOS брелок. После того как вы создали ключ SSH, введите в терминале:
ssh-add -K ~/.ssh/id_rsa
Это позволит добавить закрытый ключ SSH в macOS брелок. Клиент Git будет использовать SSH при подключении к удаленному серверу. Как долго, как вы зарегистрировали свой публичный ключ SSH на сервере, вам будет хорошо.
В этом случае вам нужно в Git учетных данных помощник, чтобы сказать Git, чтобы вспомнить свой гитхаб имя пользователя и пароль, используя следующую командную строку :
git config --global credential.helper wincred
и если вы используете РЕПО через ssh-ключа, то вам нужен SSH-ключ для авторизации.
Ни один из ответов не работал для меня. Я продолжал получать следующие каждый раз, когда я хотела "взять" и "pull":
Введите парольную фразу для ключа '/Пользователи/Имя_пользователя/.по SSH/id_rsa':
Маки
Мне удалось остановить его от прошу мою фразу:
ви ~/.по SSH/config файл
UseKeychain да
Для Windows
Я был в состоянии заставить его работать, используя информацию в этот клиент StackExchange: https://unix.stackexchange.com/a/12201/348665
Пройдя за десятки так посты, блоги, и т. д., Я пробовал ** каждый способ, и это то, что я придумал. Он охватывает все.
Эти все способы и инструменты, с помощью которых вы можете надежно проверить подлинность Git для клонирования репозитория без интерактивного ввода пароля.
Хочу Просто Работает™? Это волшебная серебряная пуля.
Получить маркер доступа (см. раздел шпаргалка если вам нужен GitHub или инструкции Gitea для этого) и установить его в переменную окружения (как для локальной разработки и развертывания):
Баш MY_GIT_TOKEN=xxxxxxxxxxxxxxxx
Для GitHub, скопируйте и выполните эти строки дословно:
Баш в Git файл config --глобальные URL-адрес.&и"https://api:[email protected]/".а то "https://github.com/" в Git файл config --глобальные URL-адрес.&и"https://ssh:[email protected]/".а то "ssh://[email protected]/" в Git файл config --глобальные URL-адрес.&и"https://git:[email protected]/".а то "[email protected]:"
Поздравляю, теперь любой автоматизированный инструмент клонирования Git-репозитории выиграл'т быть ограничен запрос пароля через HTTPS или любой стиль по SSH URL-адрес.
Не использование GitHub?
Для других платформ (Gitea, github, а также в системе Bitbucket), просто изменить URL-адрес. Дон't изменить имена пользователей (хотя и произвольными, они'вновь, необходимые для различных конфигурации записи).
Совместимость
Это работает локально в macOS, Linux и ОС Windows (в bash), Докер, CircleCI, в Heroku, Akkeris и т. д.
Подробнее
Смотри в ".а то" gitconfig хранит настройки; раздел шпаргалка.
Безопасность
Смотри в "безопасности" в части шпаргалка.
Помимо файла `~/.файл gitconfig хранит настройки, что вы можете сделать, если вы спросите:
git config --local --edit
или
git config --global --edit
git config --local user.name 'your username'
git config --local user.password 'your password'
или
git config --global user.name 'your username'
git config --global user.password 'your password'
Ваше имя пользователя и пароль могут использовать некоторые символы, что бы сломать ваш пароль, если вы используете двойные кавычки.
--Local
или глобальный
означает, что параметры настройки сохраняются для проекта или для пользователей ОС.
Из комментария к rifrol, на Linux Ubuntu, а от этого ответить:
sudo apt-get install libsecret-1-0 libsecret-1-dev
cd /usr/share/doc/git/contrib/credential/libsecret
sudo make
git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret
Другой дистрибутив's обеспечивает бинарный, так что вы Дон'т иметь, чтобы построить его.
В OS X это, как правило, приходит "по причине" с модулем по умолчанию "и osxkeychain" Так вы получите его бесплатно.
.ГИТ-учетных данных, где имя пользователя и пароль хранится при запуске
в Git файл config --глобальные учетные данные.помощник в магазине, что и другие ответы предполагают, а затем введите имя пользователя и пароль:
протокол HTTPS://${имя пользователя}:${password_or_access_token}@github.com
Итак, для того, чтобы сохранить имя пользователя и пароль:
в Git файл config --глобальные учетные данные.вспомогательные магазине эхо на “HTTPS://${имя пользователя}:${password_or_access_token}@github.com“ и GT; ~/.ГИТ-учетные данные
Это очень полезно для робот на GitHub, например, чтобы решить цепь автоматической сборкой в том же repository докер, имея правила на другую ветку и затем вызвать его, нажав на него в post_push
проститутка в докер-концентратор.
Пример этого можно увидеть здесь в сайте StackOverflow.
просто использовать
git config --global credential.helper store
и сделать <и>ГИТ тянуть и л;/я и GT;, он будет просить логин и пароль, отныне он не будет предоставлять каких-либо запрашивать имя пользователя и пароль, он будет хранить информацию