Введение
Сегодня я расскажу о GitHub – сервисе для работы с системой контроля версий Git, которая является важным инструментом командной разработки. В этой статье вы узнаете о его основных возможностях и предназначении, познакомитесь с процессом настройки и установки на компьютер, чтобы приступить к использованию.
Зачем нужен Git
Git позволяет возвращать отдельные файлы и весь проект к прежнему состоянию, просматривать происходящие со временем изменения. Определять, кто последним вносил изменения во внезапно переставший работать модуль, отследить цепь событий, которая привела к ошибкам и многое другое. Одним из наиболее популярных ресурсов для работы с Git является GitHub. Для удобства работы с ним существует графический клиент GitHub Desktop и консольный Git Shell. В статье рассмотрен пример работы с использованием этого сервиса и его графического клиента.
Основные возможности GitHub
Этапы разработки
С помощью вкладки commits вы можете изучить историю разработки проекта: когда и кем были внесены изменения в какие файлы и строки, как развивался проект в целом. Коммиты (“commit” - фиксировать) - записи изменений в репозиторий.
Контроль версий
Git позволяет создавать несколько различных, параллельных версий проекта – веток, каждая из которых предназначена для разных целей. Допустим, у вас есть работающий проект. Основная ветка проекта – master. В ней хранится последняя стабильная версия. Для добавления в проект новой функциональности необходимо создать отдельную ветку, при этом данные изменения никак не отразятся на основной версии. Можно переключаться между ветками, что приведёт к изменению файлов локальной версии репозитория.
Начало работы
Как развернуть локальный репозиторий
Начнем с того, что для работы с Git необходима локальная копия (клон) удаленного репозитория – папка на компьютере, в которой будут храниться его файлы. С ними вы будете в дальнейшем работать.
Для клонирования репозитория существующего проекта зайдите на страницу вашего проекта, выберите нужный репозиторий, в открывшемся меню нажмите Clone or download, затем – Open in Desktop.
Откроется Git клиент, где вам будет предложено выбрать директорию для скачивания репозитория. После скачивания файлов попробуйте внести изменения в какой-нибудь файл репозитория – они сразу отобразятся в Git клиенте в разделе Changes:
Если вы хотите отменить изменения – нажмите правой кнопкой мыши на галочку напротив файла. Появится вкладка Discard changes. Чтобы отменить изменения во всех файлах – нажмите на самую верхнюю галочку, затем Discard all changes.
Также вы можете развернуть локальный репозиторий, который затем можно синхронизировать c GitHub, нажав на кнопку Сreate. Чтобы добавить существующий репозиторий на вашем компьютере – нажмите Add:
После клонирования репозитория можно приступить к работе. Сначала выберите ветку, в которой вы будете работать.
Для создания новой ветки нажмите на кнопку слева от названия ветки. Новая ветка образуется от той, которая указана; изменения, которые есть в текущей ветке, но отсутствуют в мастере, будут перенесены в новую ветку.Для того чтобы начать работу с последней актуальной версией, нажмите кнопку Sync – ваш локальный репозиторий синхронизируется с удалённым. В локальном репозитории появятся все последние версии файлов. Если вы забудете синхронизироваться перед началом работы, может возникнуть ситуация, когда вы внесли изменения в старую версию файла. В таком случае возникает конфликт ваших изменений с изменениями в актуальной версии. Объединять их вам придется вручную. Процесс этот порой может быть довольно долгим и трудоёмким. Для того чтобы сделать коммит, нужно ввести общее название изменений (Summary). В description описывается, какие изменения были внесены. Оно не является обязательным. Ваш коммит появится в разделе History.
После этого тоже обязательно синхронизируйтесь. Для того чтобы другие разработчики узнали о внесённых вами изменениях и рассмотрели их для внесения в одну из веток, существует действие под названием Pull request. После отправки Pull request’a разработчики знакомятся с изменениями, оставляют комментарии к коду, вносят правки и при необходимости добавляют коммиты.
Ваш реквест появится во вкладке “Рull requests” на странице проекта, поделитесь ссылкой на него с другими участниками. Можете снова добавлять коммиты в созданную ранее ветку, они отобразятся в пулл-реквесте. Когда все изменения будут согласованы, ветки смёрджат (merge - операция слияния веток), пулл-реквест будет закрыт и все изменения окажутся в ветке, в которую он был сделан.
Итоги
Вы узнали об основном предназначении и возможностях GitHub – инструмента, используемого в совместной разработке. Для начала работы с ним нужно:
1. Стать пользователем сервиса github.com и присоединиться к проекту
2. Установить клиент Github Desktop
3. Клонировать нужный репозиторий и начать работать с ним в клиенте