Краткий обзор GitHub и начало работы с ним

5 min read

Введение

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

Зачем нужен Git

Git позволяет возвращать отдельные файлы и весь проект к прежнему состоянию, просматривать происходящие со временем изменения. Определять, кто последним вносил изменения во внезапно переставший работать модуль, отследить цепь событий, которая привела к ошибкам и многое другое. Одним из наиболее популярных ресурсов для работы с Git является GitHub. Для удобства работы с ним существует графический клиент GitHub Desktop и консольный Git Shell. В статье рассмотрен пример работы с использованием этого сервиса и его графического клиента.

Основные возможности GitHub

Этапы разработки

С помощью вкладки commits вы можете изучить историю разработки проекта: когда и кем были внесены изменения в какие файлы и строки, как развивался проект в целом. Коммиты (“commit” -  фиксировать) - записи изменений в репозиторий.

Даты последних изменений в файловом каталоге проекта на сайте GitHub
История изменений в текущей ветке в клиенте GitHub Desktop.

Контроль версий

Git позволяет создавать несколько различных, параллельных версий проекта – веток, каждая из которых предназначена для разных целей. Допустим, у вас есть работающий проект. Основная ветка проекта – master. В ней хранится последняя стабильная версия. Для добавления в проект новой функциональности необходимо создать отдельную ветку, при этом данные изменения никак не отразятся на основной версии. Можно переключаться между ветками, что приведёт к изменению файлов локальной версии репозитория.

Работа с ветками в GitHub Desktop

Начало работы

Как развернуть локальный репозиторий

Начнем с того, что для работы с 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. Клонировать нужный репозиторий и начать работать с ним в клиенте