Работа с Git на хостинге
На хостинге Timeweb вы можете использовать Git — систему контроля версий для разработки и поддержки проектов.
В статье мы рассмотрим, как создать git-репозиторий на аккаунте виртуального хостинга и настроить подключение к удаленному репозиторию на Github.
Настройка git на хостинге
- Подключитесь к своему аккаунту по SSH.
- Перейдите в директорию, в которой будет размещаться репозиторий:
cd директория_сайта/public_html/
- Иницииализируйте репозиторий:
git init
Эта команда создаст подкаталог .git
с необходимыми файлами репозитория.
- С помощью команд ниже укажите имя пользователя и e-mail, которые будут отображаться в удаленном репозитории Github (в ветках при коммитах и т.д.). Замените имя_пользователя и test@example.com на нужные вам значения; они могут быть любыми.
git config --global user.name "имя_пользователя"
git config --global user.email test@example.com
- Проиндексируйте файлы, которые нужно отправить в удаленный репозиторий.
Чтобы выбрать все файлы в текущем каталоге, используйте:
git add .
Если нужно выбрать только отдельные файлы или каталоги:
git add имя_директории/имя_файла
- Сделайте коммит, чтобы сохранить текущее состояние проекта в репозиторий:
git commit -m 'first commit'
Подключение удаленного репозитория Github
Дальнейшее описание предполагает, что у вас уже создан аккаунт на github.com.
Шаг 1. Создание SSH-ключа
- Создайте директорию .ssh, в которой будет сохранен ключ:
mkdir .ssh
- Сгенерируйте ключ командой ниже.
ssh-keygen -t rsa
- При запросе
Enter file in which to save the key (home/u/user/.ssh/id_rsa)
укажите:
./.ssh/id_rsa
- Дважды введите пароль, который будет использоваться при подключении по SSH-ключу. Вы также можете оставить этот запрос пустым (нажав Enter), тогда подключение будет производиться без пароля.
На этом создание ключа завершено.
Шаг 2. Добавление ключа в аккаунт Github
- Выполните команду ниже, чтобы вывести содержимое публичного ключа
id_rsa.pub
в консоли:
cat ./.ssh/id_rsa.pub
- Скопируйте содержимое ключа.
- Сохраните его в своем аккаунте Github в разделе Settings -> SSH and GPG keys -> New SSH key.
Шаг 3. Проверка подключения к Github
- Выполните команду:
ssh -i ./.ssh/id_rsa git@github.com
- При запросе
Are you sure you want to continue connecting (yes/no)?
введитеyes
. - Введите пароль, если вы указывали его при создании ключа.
Если подключение было выполнено успешно, вы увидите сообщение:
You've successfully authenticated, but GitHub does not provide shell access. Connection to github.com closed.
Шаг 4. Подключение к удаленному репозиторию Github
- Выполните команду ниже, чтобы запустить менеджер ключей SSH-agent (обратите внимание, что должны быть использованы именно обратные кавычки):
eval `ssh-agent`
- Добавьте в него созданный ключ:
ssh-add ./.ssh/id_rsa
- В своем аккаунте Github найдите корректную ссылку для подключения к нужном репозиторию. Она будет иметь примерно следующий вид:
git@github.com:имя_пользователя/имя_репозитория.git
- Подключите репозиторий, указав полученную ссылку в команде, например:
git remote add origin git@github.com:timewebtest/test.git
- Теперь вы можете отправить локальную ветку master в ваш репозиторий на Github командой:
git push -u origin master
Если действие было выполнено успешно, вы увидите сообщение:
Branch 'master' set up to track remote branch 'master' from 'origin'
.