Как начать использовать GIT. Часть 1. Генерируем SSH-ключи
Рубрика: Linux -> Программирование
Метки: git | guide | howto | soft | ssh | инструменты | программирование | советы | хостинг
Просмотров: 11453
Пару лет назад я писал достаточно подробную статью о самой известной распределенной системе управления версиями - git. Статья писалась специально для журнала “Хакер” и там было больше теории, чем практики. Из-за малого количества практических примеров, ко мне в почту до сих пор приходят письма с различными вопросами. Я стараюсь отвечать всем и подробно, но одинаковые вопросы уже немножко надоели. Поэтому я решил собраться с мыслями и сделать небольшой “howto” по применению git.
В этом цикле будет совсем немного теории, но будут конкретные рецепты. Если вы никогда не использовали git, то рекомендую прочитать мою старенькую статью, а потом приступать к изучению заметок нового цикла. В первой заметке мы рассмотрим процесс регистрации учетной записи на git-хостинге и подготовки SSH-ключей для повышения удобства взаимодействия с удаленным репозиторием.
Регистрируемся в BitBucket/GitHub
На просторах сети есть множество различных git-хостингов. Самыми популярными уже несколько лет подряд являются GitHub и BitBucket. Оба проекта хороши и у каждого есть уникальные фичи. Чтобы не мучить вас сравнительным обзором скажу сразу главное преимущество BitBucket перед GitHub - количество бесплатных приватных репозиториев. GitHub позволяет бесплатно создать только один приватный репозиторий, а BitBucket целых пять. Если вы пока не хотите создавать только открытые репозитории, то воспользоваться услугами BitBucket будет более предпочтительно.
Вы можете выбрать любой git-хостинг, но я буду ориентироваться именно на BitBucket. Если вы решили остановиться на GitHub, то не переживайте. Принцип один и тот же. В общем, создавайте аккаунт в любом git-хостинге и сразу переходите в настройки профиля. В BitBucket это пункт Manage Account.
Генерируем SSH ключ
После регистрации вы сразу же можете создать первый репозиторий и перенести в него файлы из локального. В этом случае вам придется ввести в консоле логин/пароль от вашего аккаунта BitBucket/GitHub.
Каждый раз вводить свой логин/пароль из консоли - дело неблагородное. Чтобы не париться, сразу сгенирируем SSH-ключ и с помощью которого вы сможете работать с удаленными репозиториями без необходимости ввода логина и паролей.
Дальше все операции будут проводится в консоли (OS X, Linux). Если вы используете Windows, то для генерации SSH-ключей можете воспользоваться утилитой, входящий в дистрибутив популярного SSH-клиента Putty. Инструкцию обязательно сделаю, но в отдельной заметке, сейчас нет под рукой компьютера с Windows.
Для формирование пары ключей вводим команду:
$ ssh-keygen -t rsa -C “ваш email”
Например:
$ ssh-keygen -t rsa -C "antonov.igor.khv@gmail.com"
Программа ssh-keygen задаст вам несколько вопросов (имя файла для ключа, секретная фраза и т.д.). Рекомендую не изменять имя файла. Секретную фразу вводите по желанию - если введете, то потом придется вводить ее при соединении или сохранить в связке ключей. Отвечайте на них и после завершения формирования пары ключей, скопируйте содержимое публичного ключа в буффер обмена. Выполнить эту операцию можно несколькими способами. Самый простой - открыть ключ ~/.ssh/id_rsa.pub (если вы использовали имя по умолчанию) в вашем любимом текстовом редакторе и скопировать текст с ключом. Я предпочитаю копировать данные в буфер напрямую из консоли с помощью утилиты pbcopy:
$ pbcopy < ~/.ssh/id_rsa.pub
Отлично, ключ скопировали. Теперь добавим его в ваш аккаунт на BitBucket/GitHub. Возвращаемся к браузеру (помните, мы заходили в Manage account?) и в панели управления аккаунтом BitBucket переходим в раздел Security -> SSH Keys. Нажимаем “Add Key” и в появившемся окне вводим имя (обычно указывается имя компьютера на котором хранится ключ) и вставляем из буфера обмена ранее скопированный ключ. Далее нажимаем “Add SSH Key”.
Теперь остается только проверить работоспособность проделанных действий. Открываем терминал и в нем вводим команду:
$ ssh -T git@bitbucket.org
При первом подключении вам может быть выдано сообщение о невозможности проверки подлинности хоста. Игнорируйте его и сразу вводите “yes”. Дальше должно появится сообщение о состоянии подключения. Если видите что-то вроде: “You can use git or hg to connect to Bitbucket. Shell access is disabled.” или “You’ve successfully authenticated...”, то поздравляю, вы правильно сгенировали ключи и вам не придется постоянно вводить логин/пароль.
На сегодня это все. Завтра создадим удаленный репозиторий, подготовим локальный и перенесем его в удаленный.