Автоматическая авторизация на Github и Bitbucket

Для автоматической авторизации на Github и Bitbucket создаем RSA-ключ

Добавляем публичный ключ

Логинимся на гитхабе, идем в настройки SSH-keys, добавляем публичный ключ из ~/.ssh/id_rsa.pub.

Битбакет: аналогично, Manage Account > SSH Keys.

Изменяем настройки SSH

Добавляем в файл ~/.ssh/config путь к приватному ключу:

Host bitbucket.org
  IdentityFile /home/user/.ssh/id_rsa
Host github.com
  IdentityFile /home/user/.ssh/id_rsa

Проверяем работу (именно git@github.com, иначе получим ошибку Permission denied (publickey)):

ssh -T git@github.com

Добавляем RSA, в случае успеха получим:

Hi {user}! You've successfully authenticated, but GitHub does not provide shell access.

Аналогично для Битбакета : ssh -T git@bitbucket.org, в случае успеха:

logged in as {user}.

You can use git or hg to connect to Bitbucket. Shell access is disabled.

Исправляем конфиг репозитория

Исправляем .git/config, где user/repo.git - пользователь и название репозитория:

[remote "github"]
  url = git@github.com:user/repo.git
  fetch = +refs/heads/*:refs/remotes/github/*
[remote "bucket"]
  url = git@bitbucket.org:user/repo.git
  fetch = +refs/heads/*:refs/remotes/bucket/*

Пушим

git push bucket master
git push github master

Если все в порядке, пуш пройдет без запроса логина и пароля.

Ссылки