Меню

bitbucket настройка git ssh

Доступ к bitbucket и github по ssh ключам

Если попытка склонировать любой приватный репозиторий с bitbucket или github по ssh вызывает ошибку вида:

То это значит, что вы не прошли авторизацию по ssh-ключам. Тут 2 варианта:

  1. Клонировать через https схему, при этом будет запрошен имя пользователя и пароль от аккаунта. Минус тот, что при любом обращении к центральному серверу (пр. git fetch , git pull ) придётся снова вводить пароль.
  2. Настроить ssh-ключи, чтобы git-аутентификация проходила автоматически без ввода паролей и т.д.

Рассмотрим подробнее как настроить ssh-ключи на linux (ubuntu) и добавить их на github и bitbucket.

Генерация ssh-ключей.

Выполняем следующие команды:

После этого будет предложено ввести имя файла с ключами, либо если имя файла не указать, ключи будут созданы в файле id_rsa. Задаём имя файла с ключами, например, как «git_rsa«. Таким образом мы будем знать, что этот ssh-ключ используется конкретно для git-авторизации. Хотя, никто не запрещает использовать один и тот же ключ id_rsa. Ключи будут храниться в домашней директории пользователя

На запрос о установке пароля на связку ключей можно нажать enter, т.е. оставить пароль пустым (это безопасно). Теперь в каталоге

/.ssh появились 2 файла ключа:

  • git_rsa — приватный, который нельзя никому сообщать
  • git_rsa.pub — публичный, который мы сообщим gitbucket и github

По умолчанию при подключении к серверу для ssh-авторизации используется ключ с именем id_rsa. Мы это обойдём. Чтобы не указывать имя нужного нам ключа (git_rsa) при каждом подключении к серверу, отредактируйте файл

/.ssh/config (если файла ещё нет, создайте), добавьте содержимое для идентификации bitbucket-хоста и github:

Всё, на нашем комьютере или сервере (смотря где создавали ключи) нужные ключи созданы. Остаётся сообщить (добавить) наш публичный ключ туда, где мы будем проходить авторизацию, т.е. на github и bitbucket.

Добавление ssh-ключа на github

В своём профиле нажимаем Edit Profile -> SSH Keys -> Add SSH key. После этого указываем title (это название ключа, вводится для удобства) и key (это сам ключ, т.е. вставляем сюда всё содержимое файла

/.ssh/git_rsa.pub). Нажимаем Add key.

Добавление ssh-ключа на bitbucket

Авторизуемся, заходим в свой аккаунт. Нажимаем SSH keys -> Add Key. После ввода ключа в попап окошке нажимаем кнопку Add key для сохранения ssh-ключа.

Теперь вы можете клонировать свои приватные репозитории по ssh (git@github) без ввода пароля.

источник

Как настроить подключение к удаленному Git репозиторию

Как настроить подключение к удаленному Git-репозиторию, через SSH, на компьютере с Windows 7 . И соответственно выкачать содержимое к себе на локальный сервер.

Удаленный репозиторий находится на сервере с git. мне нужно просто склонировать содержимое. никаких пушей обратно. там есть идентификация. сгенерил паблик кей и отослал спец-ту на той стороне. как мне добавить ранее сгенеренный-свой ключ через консоль и подключиться к серверу? какие команды. Windows 7 на моей машине.

3 ответа 3

Установка

Если ещё не установлен, то Git можно взять здесь. Вместе с ним будет unix-like консоль Git Bash.

Клонирование через SSH

Пример команды для клонирования через SSH.

В общем случае команда для клонирования по SSH выглядит так:

Не перепутайте с HTTPS, который потребует авторизации через логин-пароль:

Создание ssh-ключа.

На Windows можно как через cmd, так и Git Bash, на *nix — просто в консоли. Но в cmd я не разбираюсь, поэтому привожу инструкцию только для Git Bash & *nix:

Читайте также:  ошибка при установке виндовс 0x00000050

Можно выбрать passphrase, который повышает надёжность, но его нужно будет вводить каждый раз при использовании. Если забудете — ключ бесполезен для дальнейшего использования.

После выполнения команды публичный ключ появляется соответственно в

Именно публичный ключ нужно передавать специалисту на той стороне. (Наверняка вы так и сделали, но всё-таки стоит об этом сказать)

Если всё сделали правильно, то при попытке соединения по ssh ключ будет использоваться автоматически.

Если ключ уже есть

То его надо положить в c:\Users\%username%\.ssh . Если имя ключа отличается от id_rsa , то надо создать файл c:\Users\%username%\.ssh\config со следующим содержимым:

На практике мне когда-то помогла эта статья — лучший пример из всего что я видел: http://habrahabr.ru/sandbox/37865/

В ней полностью показаны клиентские программы для работы с push-ом и pull-ом. У меня лично Windows недолюбливал родной Git клиент, но всегда прекрасно работает с Tortoise (есть в статье).

В ней есть полное руководство по подключению. Не уверен правильная ли это аналогия, но вы можете поставить себе программу Composer и ей подобные, после чего можно через консоль Windows полностью клонировать себе репозиторий с Git-а.

Если же касается более специфичного подключения именно к Git, то эта страница будет полезной: http://webhamster.ru/site/page/index/articles/comp/171

Добавил, как попросили, кратко содержимое статьи:

Идем на официальную страницу Git http://git-scm.com, кликаем на Download for Windows. В открывшемся окне кликаем на Full installer for official Git. Запускаем полученный exe-шник.

Я рекомендую выбрать «Run Git from the Windows Command Prompt». Все остальные опции можно оставлять по-умолчанию. После установки Git нужно перегрузиться или завершить сеанс пользователя и снова войти, чтобы применились изменения в системной переменной PATH.

Далее нужно проверить, доступен ли Git для работы. В любом каталоге даем команду:

Если получаем информацию о версии, то Git установлен и работает. Если получаем информацию что программа git не найдена, разбираемся что сделали не так.

Настройка SSH-ключей в Windows

В операционной системе Windows генератор SSH-ключей включен в комплект поставки Git. Для генерации ключей необходимо запустить на выполнение файл C:\Program Files\Git\Git bash.vbs. Его можно запустить как обычный exe-шник. Откроется программа «Консоль git». В ней надо дать команду:

Будьте внимательны, в этой консоли подглючивает копи-паст, проще ввести команду вручную. В качестве email указываем свой почтовый ящик. На запрос «Enter file in which to save the key» просто нажимаем Enter. При запросе пароля «Enter passphrase» и «Enter same passphrase again» просто нажимаем Enter. В процессе генерации ключей в консоли будет выдаваться примерно следующая информация:

После выполнения этой программы, в каталоге C:\Documents and Settings\username.ssh будут лежать файлы id_rsa и id_rsa.pub, они нам пригодятся в дальнейшем.

Установка SSH-ключа в GitHub

Нас колько я помню, эта часть ответа несколько изменилась в современном дизайне GitHub-а, но интуитивно можо найти.

Сразу после регистрации необходимо прописать в системе GutHub свой публичный ключ шифрования (открытый SSH-ключ). Для добавления ключа, надо в правом верхнем углу нажать «Account Settings».

В открывшемся окне нужно кликнуть на пункт меню «SSH Public Keys», и нажать «Add Another Public Key». Появится два поля — название ключа (Title) и содержимое ключа (Key).

Читайте также:  как сбросить сони иксперия с2105 до заводских настроек

В поле Title можно написать название компьютера, на котором сгенерирован публичный ключ. Можно писать по-русски.

В поле Key надо вставить содержимое файла id_rsa.pub . Помните, в каком каталоге они находятся? Переходим в этот каталог, открываем любым текстовым редактором файл id_rsa.pub (именно с расширением .pub , не перепутайте). Выделяем весь текст, копируем, и вставляем на странице GitHub в поле Key.

После добавления ключа, компьютер может соединяться с GitHub через программу git, и никаких ошибок не должно возникать.

Работа с репозитарием на GitHub через программу Git

Начиная с этого момента, пляски вокруг web-интерфейса GitHub можно считать законченными. Далее можно работать только используя программу git.

Вначале нужно сделать небольшую настройку программы git: указать локальной системе git имя пользователя и email. Это делается следующими командами, которые можно выполнить, находясь в любом каталоге:

где вместо YourFullName нужно написать свое имя, а вместо myemail@mail.ru — свой email. Эти значения используются для логина на GitHub. Поэтому на месте YourFullName нужно указать ваш логин на GitHub-е, а на месте myemail@mail.ru нужно указать email, который вы вводили при генерации ключей шифрования.

После этих настроек, можно заливать свои файлы в репозитарий. Переходим в каталог со своим проектом, и даем команды:

После этих команд на сервере GitHub образуется копии файлов того каталога, в котором были выполнены данные команды. Далее можно уже делать коммиты, заливки на сервер GitHub изменений, считывания изменений с сервера. Но это уже совсем другая история.

источник

[git] Доступ по ssh

Для того чтобы git работал по ssh с удалённым репозиторием нужно сгенерировать ключи и добавить публичный ключ на сервер где хранится удалённый репозиторий.

Для github.com необходимо добавить публичный кюч в свой аккаунт.

По умолчанию папка .ssh находится в домашнем каталоге. Для Windows 7

Чтобы ssh в Windows нашёл эту папку, должна быть выставлена переменная окружения

Сам ssh устанавливается вместе с git, но к нему нужно добавить путь в переменной окружений PATH

По умолчанию пара ключей кладутся в

/.ssh/id_rsa.pub (*это публичный ключ который надо скопировать в акаунт github.com)

Несколько ssh ключей при работе с git.

Например это необходимо если работать с несколькими акаунтами на github.com

Суть в кратце: для ssh можно задать конфиг (файл

/.ssh/config), в котором можно переопределять хосты и назначать для каждого свой ключ. При этом при подключении удалённого репозитория необходимо вместо gthub.com указать свой переопределённый хост — ssh его схватит, подставит нужный ключ и нужный хост. Пример:

Привязываем удалённый репозиторий:

Или меняем URL существующего:

Мега статья на Хабре про ssh Также об этом можно почитать тут и особенно вот тут

Подсказка всем, кто будет редактировать ssh_config и использовать IdentityFile: ssh-agent может (и часто так и поступает) перегружать тот ключ, что указан в ssh_config. Чтобы этого не случилось, используйте IdentitiesOnly. Пару часов однажды убил пытаясь настроить подключение к двум хостам с разными ключами.

Уже не раз сталкивался с проблемой: Невозможно клонировать по ssh c github git проект проверяем порт по default обычно 22

ssh: connect to host github.com port 22: Connection timed out

Читайте также:  как сбросить настройки mkv

The authenticity of host ‘[ssh.github.com]:443 ([192.30.253.123]:443)’ can’t be establishe d. RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added ‘[ssh.github.com]:443,[192.30.253.123]:443’ (RSA) to the list of known hosts. Hi splaa! You’ve successfully authenticated, but GitHub does not provide shell access.

если по 443 всё Ок то сылка должна иметь вид

пример: git clone ssh://git@ssh.github.com:443/SevenPowerX-PHP/StartPHP.git

  • Home
  • [Android] Инструменты работы с apk (модификация манифеста и dex кода)
  • [CentOS] Дата и время автообновление
  • [CentOS] работа с пользоватлеями
  • [composer] Версии composer, git теги и ветки
  • [cron] Работа с Cron
  • [Far] Работа с макросами
  • [git man] git read tree
  • [git] git pull с отменой текущих изменений (обновление на сервере)
  • [git] Subtree
  • [git] Доступ по ssh
  • [git] Коммиты
  • [git] Настройки
  • [git] Полезные ссылки по Git
  • [git] Работа с ветками
  • [git] Работа с сабмодулями
  • [MacOS] Настройка чистой MacOS
  • [mongodb] Основы
  • [MongoDB] Шпаргалка по MongoDB
  • [MySQL] innodb_flush_log_at_trx_commit
  • [MySQL] Too many connections
  • [MySQL] Дамп базы используя Percona xtrabackup
  • [MySQL] Изменение innodb_log_file_size
  • [MySQL] Текущая конфигурация my.cnf
  • [MySQL] Тонкя настройка MySQL
  • [nginx] Раздача файлов в Nginx используя X Accel Redirect
  • [rsync] Переднос данных с сервера на сервер
  • Action Domsin Responder
  • Android Localization
  • android onMeasure MeasureSpec
  • Android Theme and style Toolbar
  • dfasfsdf
  • Docker на Windows через Docker ToolBox
  • Front end сборка Grunt, Bower, Npm
  • Git rebase
  • Git stash
  • Gradle ссылки по мере изучения
  • Kodein 5.0
  • Kodein v4 шпаргалка
  • linux server setup
  • Memcached и PHP 5 для Windows
  • Mindstorm EV3 Linux Kotlin
  • msg format
  • MySQL Выбор случайных строк в один запрос
  • Mониторинг системы
  • PhpStorm полезности
  • Rx шпаргалка
  • SSH тунель к удалённому серверу (проброс портов к базе mongodb)
  • Toothpick
  • Using Linux to get the UDID iPhone
  • Восстановление root пароля MySQL
  • Интеграция c Google Play Services (Map, Firebase и так далее)
  • Как удалать сервис в Windows?
  • Мониторинг https трафика через Charles Fiddler proxy для Android и iOS
  • Мониторинг mongodb
  • Начало работы с node.js
  • О Версионировании (Semver, SNAPSHOT и т.д.)
  • Особенности Snackbar
  • Очистка Linux Mint
  • Параметры сервера
  • Переназначение клавишь при помощи xkb
  • Подключение adb через WiFi
  • Полезно знать по конфигураии nginx
  • Полезное про MongoDB
  • Прокси сервер при помощи ssh
  • Работа с adb установка и удаление приложений
  • Работа с удалёнными репозиоториями
  • Разбираемся с Glide
  • Реверс инженеринг apk
  • Темы и стили в Android
  • Тестирование Android
  • Удалить много файлов чистить кэш
  • Упровеление проектом из коммандной строки
  • Установка Java7 и Java8 на CentOS и alternatives
  • Установка JetBrains Hub Youtrack Upsource Nginx
  • Установка MongoDb на CentOS
  • Установка MongoDB на Windows
  • Установка nginx на Windows
  • Установка PEAR
  • Установка PHP 5 на Windows
  • Установка PHPUnit
  • Установка xDebug
  • Установка последний версии Git на CentOs
  • Цвета и атрибуты Material Compoments
  • Шпаргалка по работе в Vim
  • Шпоргалка по Midnight Commander
  • Шпоргалка по MySQL
  • Show 72 more pages…
Clone this wiki locally

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

источник

Добавить комментарий

Adblock
detector