▍Gitlab sync¶
Зачем?¶
С 13 августа 2021 года GitHub убрал возможность использовать личный пароль для получения доступа к репозиториям по https из терминала. Вместо пароля от аккаунта на github.com при выполнении команд git clone
, git fetch
, git pull
, или git push
теперь необходимо указывать персональный токен доступа. Такое решение было принято с целью защиты пользователей и предотвращения использования злоумышленниками похищенных или взломанных паролей.
root@1ae80a54c328:/# ssh-keygen -t ed25519 -C "[email protected]"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/root/.ssh/id_ed25519):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_ed25519
Your public key has been saved in /root/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:SglmKF/zN45racTa/BcvZa5ZmogchxPortGCr4j7kqk [email protected]
The key's randomart image is:
+--[ED25519 256]--+
| ..o. |
| .o. . . o |
| ..... .. ...|
| ..o..o . . o..|
| .oo S+ + . |
| .. .o o = ..o|
| +.. . o B ++|
| + . ..+.=.oo*|
| . . +=. o++|
+----[SHA256]-----+
gitlab-rake gitlab:mirror:add --url='[email protected]:imartinez/privateGPT.git' --mirror-user='daffinru' --mirror-password='' --mirror-ssh-key='/root/.ssh/id_ed25519'
gitlab-rake gitlab:mirror:update
[email protected]:imartinez/privateGPT.git
Как сменить адрес удалённого репозитория¶
Если у вас уже есть репозиторий, синхронизация которого с удалённым сервером происходила по протоколу https, а теперь вы хотите использовать ssh, вам необходимо будет сменить адрес удалённого репозитория, выполнив следующую команду в локальном репозитории:
где:serviceurl - url сервиса, на котором находится удалённый репозиторий (например, github.com или gitlab.com).
username - ник владельца репозитория.
reponame - название репозитория.
Проверить, что изменения прошли корректно, можно путём выполнения команды
в локальном репозитории. Если в выводе содержатся строки вида: с путями до вашего удалённого репозитория, значит, всё сделано правильно.