Как добавить ssh на github linux

Обновлено: 29.06.2024

URL-адреса SSH изменились, но старые URL-адреса SSH продолжат работать. Если вы уже настроили SSH, необходимо обновить удаленные URL-адреса в новом формате:

  • Проверьте, какие удаленные службы используют SSH, выполнив git remote -v в клиенте Git.
  • Откройте репозиторий в Интернете и нажмите кнопку клонировать в правом верхнем углу.
  • Выберите SSH и скопируйте новый URL-адрес SSH.
  • В клиенте Git выполните: git remote set-url <remote name, e.g. origin> <new SSH URL> . кроме того, в Visual Studio перейдите в репозиторий Параметрыи измените удаленные.

начиная с Visual Studio 2017 можно использовать SSH для подключения к Azure DevOps репозиториев Git.

Как работает проверка подлинности SSH-ключа

Проверка подлинности с помощью открытого ключа SSH работает с асимметричной парой созданных ключей шифрования. открытый ключ предоставляется Azure DevOps и используется для проверки первоначального ssh-подключения. Закрытый ключ обеспечивает безопасность и безопасность в системе.

Настройка проверки подлинности ключей SSH

Следующие шаги охватывают настройку проверки подлинности ключей SSH на следующих платформах:

  • Linux
  • macOS, работающий по меньшей мере Leopard (10,5)
  • Windows системы с Git для Windows

Настройте SSH с помощью командной строки. bash является общей оболочкой в Linux и macOS, а git для Windows установки добавляет ярлык для git Bash в меню. Другие среды оболочки будут работать, но не будут рассмотрены в этой статье.

Шаг 1. Создание ключей SSH

Если вы уже создали ключи SSH в системе, пропустите этот шаг и перейдите к разделу Настройка ключей SSH.

Команды здесь позволяют создавать новые ключи SSH по умолчанию, перезаписывая существующие ключи по умолчанию. Прежде чем продолжить, проверьте

/.ssh папку (например,/Хоме/Жамал/.СШ или к:\усерс\жамал\.СШ) и найдите следующие файлы:

Если эти файлы существуют, вы уже создали ключи SSH. Вы можете перезаписать ключи с помощью следующих команд или пропустить этот шаг и перейти к разделу Настройка ключей SSH для повторного использования этих ключей.

Создайте ключи SSH с помощью ssh-keygen команды из bash командной строки. Эта команда создаст 3072-разрядный ключ RSA для использования с SSH. При появлении запроса можно предоставить парольную фразу для закрытого ключа — Эта парольная фраза обеспечивает еще один уровень безопасности для закрытого ключа. Если вы выдаете парольную фразу, обязательно Настройте агент SSH для кэширования парольной фразы, чтобы не вводить его каждый раз при подключении.

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

шаг 2. добавление открытого ключа в Azure DevOps Services/тфс

Свяжите открытый ключ, созданный на предыдущем шаге, с ИДЕНТИФИКАТОРом пользователя.

Откройте параметры безопасности, перейдя на веб-портал и выбрав аватар в правом верхнем углу интерфейса пользователя. В появившемся меню выберите открытые ключи SSH .

Снимок экрана, показывающий пункт меню открытых ключей SSH и аватар пользователя, выбранный в Azure DevOps Services.

Выберите + новый ключ.

Доступ к конфигурации безопасности в Azure DevOps Services

Скопируйте содержимое открытого ключа (например, id_rsa. pub), созданного в поле данных открытого ключа .

старайтесь не добавлять пробелы или новые строки в поле данных ключа , так как это может привести к тому, что Azure DevOps Services использовать недопустимый открытый ключ. При вставлении в ключ новая строка часто добавляется в конец. Не забудьте удалить эту новую строку, если она возникает.

Настройка открытого ключа в Azure DevOps Services

Шаг 2. Добавление открытого ключа в Azure DevOps

Свяжите открытый ключ, созданный на предыдущем шаге, с ИДЕНТИФИКАТОРом пользователя.

Откройте параметры безопасности, перейдя на веб-портал и выбрав аватар в правом верхнем углу интерфейса пользователя. В появившемся меню выберите Безопасность .

Доступ к профилю пользователя в Azure DevOps Services

Выберите + новый ключ.

Доступ к конфигурации безопасности в Azure DevOps Services

Скопируйте содержимое открытого ключа (например, id_rsa. pub), созданного в поле данных открытого ключа .

старайтесь не добавлять пробелы или новые строки в поле данных ключа , так как это может привести к тому, что Azure DevOps Services использовать недопустимый открытый ключ. При вставлении в ключ новая строка часто добавляется в конец. Не забудьте удалить эту новую строку, если она возникает.

Настройка открытого ключа в Azure DevOps Services

Шаг 3. Клонирование репозитория Git с помощью SSH

Сведения о подключении по протоколу SSH из существующего клонированного репозитория см. в разделе обновление удаленных служб до SSH.

Скопируйте URL-адрес клонирования SSH с веб-портала. В этом примере URL-адрес клона SSL предназначен для репозитория в Организации с именем Fabrikam-Fiber, как указано первой частью URL-адреса после .

Azure Repos URL-адрес клона SSH

Выполните git clone в командной строке.

SSH может отобразить отпечаток SSH сервера и попросить вас его проверить. Следует убедиться, что отображаемый отпечаток соответствует одному из отпечатков пальцев на странице открытых ключей SSH .

SSH отображает этот отпечаток при подключении к неизвестному узлу и защищает вас от атак типа "злоумышленник в середине". Приняв отпечаток узла, SSH не выводит запрос повторно, пока отпечаток не изменится.

Когда появится запрос на продолжение подключения, введите yes . Git будет клонировать репозиторий и настроить удаленный доступ origin для подключения по протоколу SSH для будущих команд git.

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

Вопросы и устранение неполадок

Вопрос. После выполнения git clone я получаю следующую ошибку. Что следует делать?

Ответ . Вручную запишите ключ SSH, выполнив команду:

Вопрос. как с помощью Git запоминать парольную фразу для моего ключа на Windows?

Ответ . выполните следующую команду, входящую в Git, чтобы Windows запустить процесс в PowerShell или в Windows командной строке. ssh-agent кэширует вашу парольную фразу, чтобы не указывать ее при каждом подключении к репозиторию.

Если вы используете оболочку Bash (включая Git bash), запустите ssh-agent с:

Вопрос. я использую в качестве моего клиента SSH ввод и создал ключи с помощью PuTTYgen. Можно ли использовать эти ключи с Azure DevOps Services?

Ответ. Да. Загрузите закрытый ключ с помощью PuTTYgen, перейдите в меню преобразования и выберите Экспорт ключа OpenSSH. Сохраните файл закрытого ключа и выполните действия по настройке ключей, не относящихся к по умолчанию. Скопируйте открытый ключ непосредственно из окна PuTTYgen и вставьте в поле Data ( Ключевые данные ) в параметры безопасности.

Вопрос. Как убедиться, что открытый ключ, который я отправил, имеет тот же ключ, что и локальный?

Ответ . Отпечаток открытого ключа, который отображается в профиле, можно проверить с помощью следующей команды, выполняемой для открытого ключа в bash командной строке. Если значения по умолчанию не используются, необходимо будет изменить путь и имя файла открытого ключа.

Затем можно сравнить сигнатуру MD5 с той, которая есть в вашем профиле. Эта проверка полезна при возникновении проблем с подключением или при неправильном вводе открытого ключа в поле данных ключа при добавлении ключа в Azure DevOps Services.

Теперь можно выполнить любую команду git, которая подключается к origin .

Вопрос. как использовать расположение ключа не по умолчанию, т. е. not/.СШ/id_rsa и

Ответ . Чтобы использовать ключи, созданные в, в другом месте, отличном от используемого по умолчанию, выполните следующие две задачи:

  1. Ключи должны находиться в папке, которую можно читать или изменять. Если у папки есть более широкие разрешения, SSH не будет использовать эти ключи.
  2. Необходимо предоставить SSH сведения о расположении ключей. Вы делает SSH-доступ к ключам с помощью ssh-add команды, предоставляя полный путь к закрытому ключу.

в Windows перед запуском необходимо ssh-add выполнить следующую команду из команды, включенной в Git, для Windows:

Эта команда выполняется как в PowerShell, так и в командной строке. При использовании git Bash необходимо использовать следующие команды:

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

В macOS и Linux также необходимо ssh-agent запустить перед запуском ssh-add , но среда команд на этих платформах обычно начинает с самого начала ssh-agent .

Вопрос. у меня несколько ключей SSH. Разделы справки использовать разные ключи SSH для разных серверов SSH или репозиториев?

Ответ . Как правило, если вы настроили несколько ключей для клиента SSH и подключились к серверу SSH, клиент может попытаться использовать ключи по одному, пока сервер не примет его.

однако это не работает с Azure DevOps по техническим причинам, связанным с протоколом ssh, и о том, как структурированы url-адреса SSH Git. Azure DevOps будет отменять первый ключ, предоставляемый клиентом во время проверки подлинности. Если этот ключ недопустим для запрошенного репозитория, запрос завершится со следующей ошибкой:

для Azure DevOps необходимо настроить SSH для явного использования определенного файла ключа. Один из способов сделать это для изменения

/.ssh/config файла (например, /home/jamal/.ssh или C:\Users\jamal\.ssh ) следующим образом:

Ответ . Git для Windows 2.25.1 поставляется с новой версией OpenSSH, которая по умолчанию удалила некоторые протоколы обмена ключами. в частности, определено diffie-hellman-group14-sha1 как проблематичное для некоторых Azure DevOps Server и клиентов TFS. Эту проблему можно обойти, добавив следующую команду в конфигурацию SSH (

Вопрос. какие уведомления могут получать сведения о ключах SSH?

Ответ . при регистрации нового ключа ssh с Azure DevOps Services вы получите уведомление по электронной почте о том, что в учетную запись добавлен новый ключ ssh.

Пример уведомления SSH

Вопрос. что делать, если я полагаю, что кто-то, помимо меня, добавляет ключи SSH в мою учетную запись?

Ответ . Если вы получили уведомление о регистрации SSH-ключа и вы не перегрузили его в службу вручную, возможно, ваши учетные данные были скомпрометированы.

Следующий шаг — выяснить, не был ли ваш пароль скомпрометирован. Изменение пароля всегда является хорошим первым шагом для защиты от этого вектора атак. если вы являетесь Azure Active Directory пользователем, обратитесь к администратору, чтобы проверить, использовалась ли ваша учетная запись из неизвестного источника или расположения.

Вопрос. что делать, если у меня по-прежнему запрашиваются пароль и GIT_SSH_COMMAND="ssh -v" git fetch отображается no mutual signature algorithm ?

Ответ . некоторые дистрибутивы linux, например Fedora Linux, имеют политики шифрования, требующие более строгих алгоритмов подписи SSH, чем поддерживает Azure DevOps (по состоянию на январь 2021). Есть запрос на открытие функции для добавления этой поддержки.

В этом гайде покажу как создать ключ, загрузить на сервер и перенастроить локальный репозиторий на SSH доступ. В качестве примера используется Windows 10 и GitBash.

Что необходимо

  • Gitbash или установленный git для Linux и macOS.
  • Репозиторий на GitHub.

Создание пары ключей SSH

SSH (Secure SHell) - это протокол, который позволяет безопасно авторизоваться в различные сервисы, подключаться к удаленным терминалам, передавать по шифрованным каналам информацию. Очень распрастранен при работе с репозиториями. Использует пару ключей - публичный и приватный.

Открывайте GitBash или терминал, вводите:

💡 Если у вас будет ошибка: No such file or directory - создайте папку, выполнив команду:

После заходите в папку.

Для генерации ключа используется программа ssh-keygen , она обычно установлена, в Windows встроена в GitBash.

Github рекомендует использовать ключ типа ed25519, так как этот алгоритм на данный момент самый безопасный, с коротким открытым ключом (68 символов, против 544 у RSA) и что важно - быстро работает. За тип ключа отвечает параметр -t .

Длина ключа рекомендуется 4096 бит, при создании это параметр -b .

💡 При генерации ключей , ключи по-умолчанию будут сохранены в папке .ssh текущего пользователя.

В итоге для запуска генерации ключа, выполните:

Вам будут заданы несколько вопросов:

Куда сохранить файл ( Enter file in which to save. ) - нажмите Enter и по умолчанию ключ будет назван id_ed25519 и сохранится в .ssh папке профиля текущего пользователя. (в Windows папки пользователя в C:/Users, в macOs/Linux папка пользователя в /home)

Введите кодовую фразу ( Enter passphrase. ) - опционально, кодовая фраза это элемент безопасности. Если ваш приватный ключ попадет в чужие руки, им не смогут воспользоваться пока не подберут кодовую фразу. Это даст вам больше времени для замены ключей и отказа от скомпрометированного ключа. Предлагаю в данный момент отказаться от ключевой фразы и просто нажать Enter.

Подтвердить кодовую фразу или ее отсутсвие, тоже нажав Enter.

В результате вам покажут рисунок вашего ключа:

Проверьте, на месте ли ключи, выведите список файлов в папке .ssh :

Вывод должен быть таким:

первый файл это приватный ключ, а второй с .pub это публичный.

Активация ключа

Для того чтобы ключ использовался системой, необходимо добавить ключ в ssh-agent.

результат, номер процесса может отличаться:

Добавьте ранее созданный ключ:

При успехе получите ответ:

Ключи SSH готовы к использованию!

Добавление публичного ключа в профиль на GitHub

ℹ Кратко про ключи. С помощью публичного ключа, каждый может зашифровать информацию, расшифровать может только владелец приватного ключа, поэтому приватный ключ нельзя передавать, отправлять или хранить в открытом виде. Желательно пару ключей дополнительно скопировать на отдельный носитель, на случай потери ключа на компьютере.

В GitHub для работы с репозиториями скопируйте публичный ключ, одним из способов:

это скопирует публичный ключ в буфер обмена.

  • если данная команда не работает, откройте файл id_ed25519.pub в любом текстовом редакторе, и скопируйте все содержимое файла, публичный ключ выглядит так:

Нажимайте не кнопку New SSH Key

В поле Key вставьте скопированный ключ:

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

Нажимайте кнопку Add SSH Key .

Теперь можно использовать SSH доступ к вашим репозиторияем!

Получение репозитория по SSH

Откройте репозиторий и скопируйте ссылку для SSH доступа:

И как обычно используйте команду git clone:

Зайдите в репозиторий и скопируйте SSH ссылку доступа, перейдите в локальный репозиторий и удалите текущий remote origin:

и добавьте новый, последняя строка в команде это ссылка доступа SSH:

проверьте список удаленных репозиториев:

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

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

Если ключи у вас уже есть, то читайте сразу как добавить ssh ключ на github или добавить ssh ключ на bitbucket.

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

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

Для генерации 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.

В свежем интерфейсе github:

  1. кликаем на иконку профиля в правом верхнем углу, далее
  2. выбираем меню Settings
  3. в меню слева выбираем SSH and GPG keys
  4. Жмем кнопку New SSH key.

GitHub добавление нового ssh-ключа для доступа к репозиториям без ввода пароля

В форме добавления ключа указываем title (это название ключа, вводится для удобства, не на что не влияет) и key (это сам ключ, т.е. вставляем сюда всё содержимое файла

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

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

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

bitbucket создание ssh-ключа

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

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

На что стоит обратить внимание если ssh-авторизация по ключу все еще не работает:

  • на ключ id_rsa не должно быть слишком много прав
  • у вас создано несколько ssh-ключей и нужно дать понять какой из ключей использовать
Поисковые запросы , по которым приходили пользователи


Дата добавления: 7 лет назад bitbucket git ssh-keys

Комментарии 5

"Warning: Permanently added the RSA host key for IP address '2406:da. e9:9f55' to the list of known hosts.
Permission denied (publickey)."

да, на бою в папке .ssh после первого запуска пула или пуша в путти был такой запрос:

"
The authenticity of host 'bitbucket.org (2406:da0. 2c0:3470)' can't be established.
RSA key fingerprint is SHA256:zzX. YXaGp1A.
RSA key fingerprint is MD5:97:8c:1. aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)?
"
как я понял, что-то в стиле "подлинность битбакета не установлена, хотите ли продолжить?". Я ответил согласием, после чего создался успешно файл known_hosts (на бою в папке с ключами), куда пишется ip битбаккета (как я понимаю) и дублируется строка из ключа доступа в том виде ,в котором лежит на битбакете. На др ресурсах вычитал, что чтобы Warning не выскакивал, нужно на бю в папке с ключами положить файл config без расширения и с содержимым "UserKnownHostsFile

/.ssh/known_hosts" - сделано. Права доступа на файл ключа на бою - 600, на остальные 2 файла (конфиг и хостс) - 644, на всю папку .ssh - 700.

Что еще нужно, чтобы пул/пуш заработал по ssh. Я уже в депрессии полнейшей!)) Может для доступа к самому репо на битбакете отдельные ключи нужно добавлять? Типа, к аккаунту на битбаккете подключается, а к репе уже нет?

Amati2007, с виду вы все делаете верно!
на битбакет публичный ключ достаточно добавить только в аккаунт. Можно и отдельно в каждый репозиторий добавлять ключ, но не обязательно.

Вот еще вы пишете, что в бою при запушить возникает ошибка "Permission denied (publickey)".
1) А как вы на боевой сервер подключаетесь? Вводите пароль или авторизуетесь по тому же самому ssh ключу? Если вводите пароль, то попробуйте для начала проверить ssh-авторизацию на хостинг по тому же ключу.
2) У вас одна единственная пара ключей создана и называется id_rsa по дефолту? Чтобы убедиться что один и тот же ключ используется для коннекта, тот же что на битбакет прописан.
3) а в

/.ssh/config нет ничего лишнего? Указания на какой-то левый ключ? Для чистоты эксперимента удалить файл)
4) known_hosts удалить для чистоты эксперимента, он должен сам создаваться при первом подключении (хотя возможно еще зависит от ssh-клиента).

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

root, спасибо, что пытаетесь мне помочь!
1) На боевой я положил публичный ключ и назвал его authorized_keys согласно п.4 инструкции по добавлению на сервер ключей ssh от хостера (https://jino.ru/help/faq/ssh/ssh-key-auth/). То есть ,если этого ключа на боевом сервере нет, то при запуске путти просит указать и логин и пароль. Если же этот ключ там лежит, то путти просит ввести логин, а затем выдает строку Authenticating with public key "rsa-key-20201109" from agent, из которой можно понять, что авторизация по ключам с сервером успешна.
2) Да, я проводил чистый эксперимент - удалил все ключи с пк, с сервера и с битбаккета, перегенерировал их через puttygen и вновь все разложил (сохраненный публичный положил на боевой под названием файла authorized_keys, строку из самого путтигена - на битбакет (название файла ключа там необязательное поле, но я ввел такое же ,как на боевом), приватный подключил в puttyagent).

Ремарка: если пробовать работать с репо не по ssh, а по https, то происходит следующее: при заходе в путти по логин/паролю все успешно, при попытке пулл/пуш просит пароль - я его ввожу тот, что от аккаунта битбакета и, вуаля, меня не пускает. все тот же "Доступ запрещен", хотя локальная связка работает и я могу как принимать файлы с битбакета на локал, так и отправлять изменения обратно.

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

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


31.9k 22 22 золотых знака 119 119 серебряных знаков 206 206 бронзовых знаков 139 1 1 золотой знак 1 1 серебряный знак 5 5 бронзовых знаков @NickVolynkin удаленный репозиторий находится на сервере с git. мне нужно просто склонировать содержимое. никаких пушей обратно. там есть идентификация. сгенерил паблик кей и отослал спец-ту на той стороне. как мне добавить ранее сгенеренный-свой ключ через консоль и подключиться к серверу? какие команды. Windows 7 на моей машине. @NickVolynkin разобрался. остался 1 вопрос. как через консоль добавить ssh ключ, который был ранее создан. не через веб-интерфейс, а именно через консоль к себе в гит. на удаленный сервер я передал спец-ту. он добавил. у меня при подключении не цепляется ключ. вот поэтому я и спрашиваю

Установка

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

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

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

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

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

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

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

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

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

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

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

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


31.9k 22 22 золотых знака 119 119 серебряных знаков 206 206 бронзовых знаков

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

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

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

Я рекомендую выбрать "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).

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

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

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

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

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

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

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

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

Читайте также: