Руководство по созданию первого коммита в свой репозиторий на Github
В этом мануале представлены основные сведения об инструментах контроля версий программного обеспечения и рассмотрен алгоритм создания локального репозитория, связанного с удалённым.
- Github нужен для взаимодействия между разработчиками при совместной работе над проектами (может использоваться в течении всего жизненного цикла ПО).
- Работа в Github организуется посредством предоставления определенного доступа через интернет каждому из членов команды к рабочим директориям проекта, истории изменений, а также к задачам и документации проекта, с возможностью изменять файлы и отслеживать историю их редактирования.
Основы
GitHub — онлайн-хостинг репозиториев, обладающий всеми функциями системы контроля версий и функциональностью управления (в него входит всё то, что поддерживает Git). Вместе с Git он даёт разработчикам возможность сохранять их код онлайн, а затем взаимодействовать с другими разработчиками в разных проектах.
Git — это инструмент, позволяющий реализовать распределённую систему контроля версий.
GitHub — это сервис для проектов, использующих Git.
Создать коммит (commit) значит зафиксировать изменения любых файлов, входящих в репозиторий.
Репозиторий — каталог файловой системы, в котором могут находится: файлы журналов конфигураций и операций, выполняемых над репозиторием, а также сами контролируемые файлы.
Репозиторий бывает:
- локальный (расположен непосредственно в памяти компьютера разработчика, в нем происходит разработка и фиксация изменений, после чего можно отправить на удалённый репозиторий)
- удалённый (находится на сервере, может быть приватным – доступным ограниченному числу лиц, и публичным – open source)
В GitHub входит:
- система контроля доступа
- багтрекинг (отслеживание истории действий над файлами и, при необходимости, переход на более ранние версии)
- возможность управлять задачами и справками для проектов
К проекту, загруженному на GitHub, можно получить доступ с помощью интерфейса командной строки и Git-команд, сайта https://github.com/, или с помощью приложения Github — desktop для Windows или macOS.
Для первого коммита на Github необходимо установить Git, создать локальный репозиторий, добавить в него файлы, сделать коммит, подключиться к удалённому репозиторию и отправить в него изменения.
Установка Git
Для Linux:
1. Откройте терминал и перейдите в желаемую директорию для установки.
2. Введите:
sudo apt-get install git
Для macOS:
1. Воспользуемся
homebrew
2. Вводим в терминале:
brew install git
Для Windows, (для macOS и Linux — альтернатива):
1. Перейдите по ссылке: http://git-scm.com/downloads
2. Выберите нужный пакет и следуйте дальнейшим инструкциям.
Далее работа с Git будет выполняться в терминале Bash, который станет доступен на любой ОС после установки Git. Так вы будете лучше понимать устройство работы с системами контроля версий и возможности графического клиента ограничены по сравнению с консольным.
Создание и настройка локального репозитория
1. Открываем Bash
Пусть наш проект имеет путь в файловой системе Users/Public/Project. Перед созданием локального репозитория желательно удалить все ненужные, временные файлы в папке проекта.
2. Настроим имя пользователя и адрес электронной почты:
git config --global user.name "Name" git config --global user.email email@mail.ru
(где Name – логин пользователя, email@mail.ru — почта)
Теперь каждое наше действие будет отмечено именем и почтой, это вносит порядок в историю изменений.
tree – команда для просмотра древовидной структуры файловой системы, в которой мы находимся.
find – удаление файлов со специфичным суффиксом.
3. Переходим в папку с проектом Users/Public/Project:
cd Users/Public/Project/
4. Создадим локальный репозиторий в папке с проектом:
git init
Командная строка должна вернуть что-то вроде:
Initialized empty Git repository in Users/Public/Project/
Добавление файлов в локальный репозиторий
1. Теперь создадим любой файл в нашей директории, например, first.txt
2. Добавим его в систему управления версиями:
git add first.txt
3. Если нужно добавить все файлы в директории, то используем:
git add –A
или:
git add --all
4. Проверить текущее состояние:
git status
Можно отменить добавление файла командой:
git rm –-cached first.txt
Создание версии проекта
После добавления нужного файла в staging area (область подготовленных файлов) можно создать версию проекта.
1. Введем команду:
git commit -m "comment"
Ключ –m означает создание пользователем описания этого коммита.
Для удаления всеx файлов в папке, не относящихся к проекту, и не сохраненных в репозитории, можно воспользоваться командой:
git clean -df
Создание репозитория на Github
Все действия до этого раздела производились над локальным репозиторием, который находится у вас на компьютере. Если мы хотим сохранить проект в Интернете, и предоставить к нему доступ, то создадим репозиторий на Github.
1. Регистрируемся на сайте: github.com под именем nikname (может быть любым другим).
2. Нажимаем кнопочку "+" и вводим название репозитория.
3. Выбираем тип Public (Private доступен только в платной версии).
4. Нажимаем Create.
В результате создан репозиторий в Github (на экране видим инструкцию, по соедининению локального репозитория со вновь созданным).
5. Добавляем удаленный репозиторий (по протоколу SSH) под именем origin (желательно использовать его, но можно любое другое, главное – не master – оно используется в момент релиза версии).
git remote add origin git@github.com:nikname/project.git
Результат можно увидеть с помощью команды:
git remote -v
Если все правильно сделано, то увидим:
origin git@github.com:nikname/project.git (fetch)
origin git@github.com:nikname/project.git (push)
Для отмены регистрации удаленного репозитария, введите:
git remote rm origin
Этой командой вносятся все изменения, которые были сделаны в локальном репозитории на Github:
git push -u github master
-u ключ установления связи между удаленным репозиторием github и веткой master. Все дальнейшие изменения переносятся на удаленный репозиторий следующей командой: git push
Полезные ресурсы
- Более подробно про Git можно прочитать в книге Скотта Чакона и Бена Штрауба — Pro Git
- За помощью с работой в Github переходим на сайт.