
# **Шпаргалка по Git'у**
## **I. Основные команды**
- *git init* - Данная команда инициализирует репозиторий.
- *git add Имя файла* - Данная команда добавляет файлу версионность (включает режим фиксации версии) в репозитории.
- *git status* - Данная команда выводит статус выбранной папки.
- *git commit -m"Комментарий"* - Данная команда позволяет зафиксировать изменение и сообщить о появлении новой версии.
- *git log* - Данная команда выводит всю историю изменений(список commit'ов) в хронологическом порядке, с указанием номера commit’a, Автора, Даты изменения и Комментарий (к изменению).
- *git diff* - Данная команд выводит разницу между текущей и уже зафиксированной версией файла.
- *git checkout* - Данная команда дает возможность "перемещаться" между зафиксированными (сохраненными версиями).
- *git checkout master* - Данная команда дает возможность "перейти" к основной версии (ветке).
## **II. Работа с ветками**
Для просмотра списка существующих веток необходимо вызвать следующую команду:
git branch
### II.1) ***Добавление новой ветки***
Для добавления новой ветки испозуется следующая команда ("branch_name" - Название создаваемой ветки):
git branch branch_name
Команда *git status* позволяет посмотреть текущее состояние, в том числе - название текущей ветки.
### II.2) ***Переход между ветками***
Для перехода между ветками используется следующая команда ("branch_name" - Название ветки, в которую осуществляется переход):
git checkout branch_name
### II.3) ***Слияние веток***
Для слияние двух веток применяется следующая команда:
git merge branch_name
***Важные моменты при слиянии!***
В момент слияния мы находимся в ветке, куда будет загружены изменения;
"branch_name" - название ветки, изменения которой будут отправляться
### II.4) ***Последствия слияния веток***
При слиянии могут возникнуть ситуации, когда в основной ветке есть противоречия относительно изменений, получаемых с побочной ветки. В таких случаях в среде VS Code нам предоставляется возможность реализовать один из следующих вариантов
1. вариант - оставить в основной ветке её версию данных;
2. вариант - заменить данные основной ветки на данные выливаемой ветки;
3. вариант - оставить оба варианта, для возможности вручную указать итоговые данные.
# END.
~~*Author:* Bill Gates~~
~~*Corrected and supplemented:* Linus Torvalds~~
**Автор:* Александров Степан Н. (Gr_n RF)*