Використання SSH
Загальний підхід для обробки аутентифікації git - це делегування його на SSH. Зазвичай ви встановлюєте свій відкритий ключ SSH у віддаленому сховищі ( наприклад, на GitHub ), а потім використовуєте його, коли вам потрібно пройти автентифікацію. Ви можете звичайно використовувати ключовий агент, який обробляється вашим робочим середовищем, або вручну за допомогою ssh-agent
та ssh-add
.
Щоб уникнути необхідності вказувати ім'я користувача, ви можете налаштувати це і в SSH, в ~/.ssh/config
; наприклад у мене є
Host git.opendaylight.org
User skitt
і тоді я можу клонувати за допомогою
git clone ssh://git.opendaylight.org:29418/aaa
(зверніть увагу на відсутність там імені користувача).
Використання gitcredentials
Якщо підхід SSH не застосовується ( наприклад, ви використовуєте сховище, доступ до якого здійснюється через HTTPS), git має власний спосіб обробки облікових даних, використовуючи gitcredentials
(і зазвичай git-credential-store
). Ви вказуєте своє ім'я користувача, використовуючи
git config credential.${remote}.username yourusername
і помічник довіри, що використовує
git config credential.helper store
(уточнюйте, --global
чи хочете ви користуватися цією установкою всюди).
Тоді при першому зверненні до сховища git запитає ваш пароль, і він буде зберігатися (за замовчуванням у ~/.git-credentials
). Наступні звернення до сховища використовуватимуть збережений пароль, а не запитувати вас.
credential.${remote}
таcredential.helper
. Чи є якась документація, яку ви могли б вказати, оскільки це я вперше читаю про це.