Зміни до віддаленого Git-репозиторію вносяться за допомогою git push origin master
. Це звісно знають усі, в т.ч. і я. Коли робиш це, Гіт запитує логін та пароль. Можна ввести й розлабитись.
Альтернативно можливо зберегти свій публічний ssh-ключ на Git-сервері і вводити лише пароль (фразу-пароль) до приватного ssh-ключа.
Після того як ми зберегли (додали) публічний ключ до серверу (звісно перед цим ці ключі потрібно генерувати) в Гіт налаштуваннях свого репозиторію додаємо налаштування, що вказуватиме де знаходиться приватний ключ і що з ним робити:
git config core.sshCommand "ssh -o IdentitiesOnly=yes -i ~/.ssh/private-key-filename-for-this-repository -F /dev/null"
не забуваємо вказати шлях до свого приватного ключа
Заводячи новий репозиторій, цю команду необхідно виконувати для кожного окремого репозиторію (поруч із командою по додаванню ім'я користувача та е-пошти).
Є інші варіанти налаштування, включаючи налаштування одного ключа для будь-якого репозиторію на Гіт-сервері, налаштування декілька ключів для одного профілю, налаштування декілька профілів і т.д. Все це заплутано й не заплутано.
Оновлення 07.09.2020
Щоб використовувати лише фразу-пароль (passphrase) при доступі до Гіт-серверу, при цьому кожного разу не вводити логін та пароль профілю, необхідно аби віддалений сервер (remote origin) вказувався у форматі SSH, а не HTTPs.
Тобто, повинно бути так:
git@gitserver.com:user/repo.git #(git remote add origin git@gitserver.com:user/repo.git
.
Comments
April 5, 2023 02:42
Справді, налаштування доступу до Git-репозиторію може бути дещо заплутаним, але він дозволяє забезпечити безпеку та зручність роботи з репозиторієм. Інструкції, які Ви подали, корисні та допоможуть уникнути постійного введення squidward логіну та пароля під час кожного push. Крім того, якщо ви користуєтеся Git на своєму комп’ютері, важливо додатково захистити свій приватний ключ від несанкціонованого доступу. Наприклад, використовуючи пароль або інші методи шифрування. Також слід пам’ятати, що використання публічних ключів у Git дозволяє контролювати доступ до репозиторію, тому важливо не передавати свій приватний ключ третім особам.