Git: от основ до GitHub

Git — одна из популярнейших систем контроля версий.

Другие популярные системы контроля версий:

Система контроля версий (VCS) — Система контроля версий — это система, которая регистрирует все изменения в файлах, а в дальнейшем позволяет вернуться к их более ранним версиям и определить, кем и когда были сделаны конкретные изменения. (https://tagline.ru/version-control-systems-rating/)

Git — распределённая система контроля версий, позволяющая сохранять изменения, внесённые в файлы, которые хранятся в репозитории. Сами изменения сохраняются в виде снимков, называемых коммитами. Они могут размещаться на разных серверах, поэтому вы всегда восстановите код в случае сбоя, а также без проблем откатитесь до любого предыдущего состояния. Кроме того, значительно облегчается взаимодействие с другими разработчиками: несколько человек могут работать над одним репозиторием одновременно, сохраняя свои изменения. 

Работа с Git:

  1. Установка
  2. Настройка
  3. Работа с Git репозиторием
  4. Работа с удалёнными репозиториями

Установка Git

Официальная документация для установки на Windows, Linux, Mac (РУ): https://git-scm.com/book/ru/v2/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-Git

Сначала нужно скачать последнюю версию с официального сайта: https://git-scm.com/download/ 

Далее нужно установить полученный дистрибутив.

Настройка Git

  • имя пользователя:
    $ git config —global user.name «comdcomp»;
  • адрес электронной почты:
    $ git config —global user.email programmer@comdcomp.ru;

Самые стандартные настройки это имя пользователя и адрес электронной почты.

Можно настроить и другие параметры, подробнее в официальной документации (РУ) https://git-scm.com/book/ru/v2/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5-%D0%9F%D0%B5%D1%80%D0%B2%D0%BE%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-Git 

Посмотреть список всех настроек 

$ git config —list

Смена текстового редактора по умолчанию

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

Настройка:

git config —global core.editor «editor —parameters»

Пример:

git config —global core.editor \ «‘C:/Program Files/Notepad++/notepad++.exe’ -multiInst -notabbar -nosession -noPlugin»

Подробнее про смену текстового редактора (RU)  https://ru.stackoverflow.com/questions/437331/%D0%97%D0%B0%D0%BC%D0%B5%D0%BD%D0%B0-%D0%B4%D0%B5%D1%84%D0%BE%D0%BB%D1%82%D0%BD%D0%BE%D0%B3%D0%BE-%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B0-%D0%BA%D0%BE%D0%B4%D0%B0-%D0%B2-git 

Работа с Git репозиторием

Детальное руководство (РУ) https://otus.ru/nest/post/770/ 

Настройка .gitignore

Общий порядок работы:

  1. создать через текстовый редактор файл .gitignore в корне репозитория (папка с репозиторием)
  2. зафиксировать файл через git add .gitignore и git commit
  3. отправить файл в удалённый репозиторий через git push

Есть шаблоны файлов .gitignore для разных сред и для разных проектов — можно найти в google или при создании репозитория на github выбрать в настройках репозитория.

Хорошая статья на эту тему (РУ) https://devacademy.ru/article/ignorirovanie-faylov-i-katalogov-v-git

Удаленный репозиторий

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

Примеры подобных сервисов:

  • GitHub
  • BitBucket
  • Azure DevOps
  • Gitlab
  • SourceForge
  • Gogs

Дальнейшее изучение Git

Сертификация

Не смотря на то, что git является лишь одним из самых распространённых и простых инструментов помощи разработчикам, аналитикам и тестировщикам, начали появляется сертификации по этому инструменту.

Первый экзамен по git от GitHub

Подробнее https://habr.com/ru/news/t/524612/

Описание сертификации (RU) https://habr.com/ru/news/785154

Книга для подготовки к сертификации https://examregistration.github.com/handbook

Статьи по теме