1 of 25

GITгид в гит

подготовил:

Степанов Владислав Русланович 2003-го года рождения

(вот этот чел у доски)

Часть 1

Братство Git’a

Размещено по ссылке: https://cutt.us/prezKwax

2 of 25

Что такое git?

Git – бесплатная система контроля версий с распределённой архитектурой

Существуют три основных разновидности архитектуры

систем контроля

версий

Централизованная Локальная Распределённая

3 of 25

Зачем нужны такие системы?

  • Для отслеживания и ведения истории изменения файлов в проекте (кто и что изменил);
  • Откатить свой проект до более старой версии;
  • Сравнивать, анализировать или сливать свои изменения.

Каким файлообменником ты пользуешься?

<

<

GIT

4 of 25

Локальная архитектура

Локальная архитектура – концепция, при которой обработка информации ограничивается одной локальной машиной и вносить изменения можно только локально.

У вас есть устройство, ваша локальная машина, на которой хранится вся информация о изменении файлов и больше нигде, кроме как у вас этой информации нет.

5 of 25

Пример �локальной архитектуры

файл

чекпоинт

Версия 3

Версия 2

Версия 1

Локальный компьютер

Одной из самых популярных локальных систем контроля версий на сегодняшний день (не считая Git) остается система RCS. Она работает по принципу сохранения изменений в ваших файлах. То есть она хранит не целую новую версию, а только указания к изменению первоначального файла.

6 of 25

Централизованная архитектура

Централизованная архитектура – концепция, при которой обработка информации ограничивается одной машиной – общим сервером, базой данных.

Разработка зависит от состояния удалённого сервера, так как все данные о проекте хранятся на этом устройстве.

7 of 25

БД

Сервер

Пример централизованной �архитектуры

Файл

Файл

Файл

Компьютер А

Компьютер Б

Компьютер В

8 of 25

Распределённая архитектура

Распределённая архитектура – концепция, при которой обработка информации НЕ ограничивается одной машиной, а распределяется по нескольким независимым компьютерам.

То есть каждое устройства участника проекта является базой данных (БД).

Разработка не зависит от состояния удалённого сервера, так как все данные уже хранятся у каждого разработчика на устройстве.

9 of 25

Пример распределённой �архитектуры

БД

БД

БД

Сервер

Локальный

компьютер А

Локальный

компьютер Б

10 of 25

Аналог: SVN

  • Git – основная распределённая система контроля версий.
  • SVN – основная централизованная система контроля версий.

VS

11 of 25

Главный недостаток SVN

(-) SVN – история изменений в проекте хранится, как разница между последним загруженным сохранением и предыдущим, поэтому чтобы вернуться к предыдущим изменениям требуется откатиться от самого последнего изменения до нужного. Это занимает значительное количество времени.

(+) Git – хранит в себе все “контрольные точки”, загруженные сохранения. Возврат к любому из них не составляет труда и происходит без откатывания назад.

12 of 25

Как установить git (Windows)?

  1. Закрыть Доту
  2. Открыть официальный сайт git’a (https://git-scm.com)
  3. Выбрать на сайте интересующую нас операционную систему, скачать установщик
  4. Установить git (в процессе скачать Git Bash (приложение для сред Microsoft Windows, эмулирующее работу командной строки Git))
  5. Команда для проверки установленной версии: git –version
  6. Команда для настройки имени и почты пользователя:

git config –global user.name “Name

git config –global user.email kostik@mail.rucom

7. Проверка настроек git’a: git config --list

13 of 25

Git Bash

В папке с вашим проектом у вас есть возможность открыть консоль для работы с гитом (Git Bash) сразу же в этой папке.

Для этого достаточно в этой папке нажать ПКМ и выбрать Git Bash Here.

14 of 25

Окно Git Bash

Полезные команды для работы в Git Bash:

  • q – выход;
  • :wq – выход из режима редактирования сообщения.

15 of 25

Как установить git (Linux)?

  1. Удалить Доту;
  2. Открыть официальный сайт git’a (https://git-scm.com);
  3. Выбрать на сайте интересующую нас операционную систему, скачать установщик;
  4. Установить git.

ИЛИ ЖЕ

  1. Открыть терминал;
  2. Использовать команду: sudo apt install git
  3. Команда для проверки установленной версии: git –version
  4. Команда для настройки имени и почты пользователя:

git config –global user.name “Name”

git config –global user.email kostik@mail.rucom

7. Проверка настроек git’a: git config --list

16 of 25

Команды

Репозиторий (repository) — место, где хранятся и поддерживаются какие-либо данные (хранилище).

  • git init – команда, позволяющая создать git автоматически в вашей папке с проектом.
  • git clone “путь к удалённому репозиторию команда, позволяющая клонировать в папку проекта с удалённого репозитория (сервера, куда вы загружаете файлы).

17 of 25

Что происходит в результате�git init?

Git создает в указанной папке скрытую папку ".git".

В этой папке хранятся служебные файлы Git.

18 of 25

Команды

Коммит (commit) – это пакет изменений, хранящий информацию с добавленными, отредактированными или удалёнными файлами кода

  • git add “имя файла команда, позволяющая добавить изменения во временное хранилище, которые войдут в коммит;
  • git restore “имя файла– команда, откатывающая

изменения в конкретном файле к предыдущему коммиту;

  • git commit –m “комментарий– команда для создания коммита с комментарием;
  • git log – команда для просмотра истории репозитория.

19 of 25

Команды

  • git remote – команды, которые начинаются следующим образом – отвечают за настройку подключения удаленного репозитория.

Так, например, команда git remote add origin <путь к удалённому репозиторию> используется для создания записи о новом подключении к удаленному репозиторию.

  • git push – отправляет в удалённый репозиторий закоммиченные изменения;
  • git pull – затягивает изменения из удалённого репозитория в локальный проект.

20 of 25

Сокрытие изменений

  • git stash – заносит незакоммиченные изменения в стеш;
  • git stash pop – возвращает последнее незакоммиченное изменение из стеша (вы можете продолжить работу на месте, где остановились, НО перед этим Вам необходимо вернуться в ветку, в которой Вы скрыли изменения);
  • git stash pop stash@{“номер стеша”} – возвращает определённое незакоммиченное изменение из стеша.

21 of 25

Branch

Ветки (branches) помогают проект разделить на подзадачи.

  • git status – просмотр ветки, в которой вы находитесь и др.;
  • git checkout –b “название ветки– создание новой ветки и переключение на неё;

  • git branch “название ветки– создание новой ветки;
  • git checkout “название ветки– переключение между ветками.

22 of 25

Что происходит в результате�git status?

23 of 25

Отображение файлов в папке проекта

В папке проекта отображаются тип изменений над файлами.

  • Красный значок – в файл были внесены изменения;
  • Зелёный значок – в файле не было изменений;
  • Жёлтый значок – в файле есть конфликты;
  • Синий значок – новый добавленный файл в git (отслеживается);
  • Отсутствует значок – файл не добавлен в git (неотслеживается).

24 of 25

Названия файлов на русском языке

Названия файлов на русском языке могут привести к интерпретированию их названий в странную последовательность символов, что затрудняет работу, поэтому лучше использовать названия на английском языке

25 of 25

Титры

  • В главных ролях:

Git в роли git’a

Влад в роли гида

  • Нелучшие дизайнерские решения:

Влад

  • Отдельное спасибо:

Влад

Размещено по ссылке: https://cutt.us/prezKwax