Git. Создание репозитория

Содержание

Слайд 2

Изменяем главную ветку По-умолчанию основная ветка main, если ещё не создали

Изменяем главную ветку

По-умолчанию основная ветка main, если ещё не создали репозиторий,

то можно без проблем изменить ее в настройках гита. Меняем на master и нажимаем update.
Слайд 3

Создаём репозиторий Если уже создан, не беда. Нет требования, чтобы основная

Создаём репозиторий

Если уже создан, не беда. Нет требования, чтобы основная ветка

называлась master, а не main.
В будущем можно будет изменить ветку, просто это не так удобно как сделать это изначально.
1) Название – что-нибудь связанное с курсами (не обязательно, главное приличное)
2) Репозиторий private
3) добавляем по желанию README файл, он обычно содержит описание и в гите это описание отображается под структурой (дальше будет видно о чем я)
4) Добаляем .gitignore для Java (.gitignore template: Java)
5) Снизу видим как будет называться ветка по-умолчанию и ссылка на настройки, где можно ее изменить (предыдущий слайд)
6) Создаём
Слайд 4

Любуемся результатом Содержимрое файла README.md отображается под структурой репозитория.

Любуемся результатом

Содержимрое файла README.md отображается под структурой репозитория.

Слайд 5

Нужно теперь забрать себе проект самый простой способ – сделать это

Нужно теперь забрать себе проект

самый простой способ – сделать это с

помощью IDEA

Вводим ссылку, выбираем расположение и нажимаем Clone

File → New → Project from Version Control...

Слайд 6

Log In to GitHub to continue... 1) Дальше если в идее

Log In to GitHub to continue...

1) Дальше если в идее ещё

не авторизованы, то нужно пройти аутентификацию. Нажимаем Log In via Github...

3) Нажимаем Authorize JetBrains (либо просто появится сообщение об успешной авторизации)

2) Нажимаем Authorize in GitHub в открывшемся браузере

Слайд 7

На примере VCS (git) в IDEA 1) Если нет вкладки, ее

На примере VCS (git) в IDEA

1) Если нет вкладки, ее можно

добавить из View → Tool Windows → Git ( в старых версиях VCS)

Я не люблю новый режим коммита, он связан с отображением изменений, поэтому если включен режим non-modal , и сразу его выключаю

Слайд 8

Продолжение Теперь во вкладке Git мы видим раздел Local Changes –

Продолжение

Теперь во вкладке Git мы видим раздел Local Changes – это

все измененные файлы, которые наблюдает git.

Добавляем в файл .gitignore /out и /.idea для исключения файлов идеи и результатов сборки проекта.

Слайд 9

Теперь в основную ветку добавим изменения .gitignore Создадим новый коммит и

Теперь в основную ветку добавим изменения .gitignore

Создадим новый коммит и

оправим (push) его в ветку master (main). Способов сделать коммит много, выбирайте удобный вам.
Слайд 10

Заполняем данные для Commit После заполнения текста, убеждаемся что необходимые файлы

Заполняем данные для Commit

После заполнения текста, убеждаемся что необходимые файлы выбраны,

инажимаем Commit либо Commit and Push.
Разница только в том, что в первом случае для выполнения Push нужны дополнительные действия (VCS→ Push).

В диалоговом окне Push видно из какой локальной ветки будут отправлены изменения (master) и в какую удалённую(origin:master). Далее будет список коммитов, в нашем случае он только 1.

Нажимаем push и идея всю делает за нас.

Слайд 11

Убеждаемся, что всё попало в git Чтобы просмотреть список коммитов, нажимаем

Убеждаемся, что всё попало в git

Чтобы просмотреть список коммитов, нажимаем куда

указывает стрелка. (если кто-то забыл)
Слайд 12

Основная ветка готова, теперь можно переходить в выполнению заданий 1) Для

Основная ветка готова, теперь можно переходить в выполнению заданий

1) Для 3

работы никакие изменения не должны быть в ветке master (main).
2) Для 3 работы предлагаю каждое задание делать в отдельной ветке. Для получения практики.
3) Для 4 все задания из листа должны будут быть выполнены в 1 (одной) ветке, ответвленной от master (main).
Слайд 13

Выбрали New Branch... Вводим название ветки, для 3 практики предлагаю следующее

Выбрали New Branch...

Вводим название ветки, для 3 практики предлагаю следующее наименование

hw3-task*,
где вместо * номер задания (вариант не нужен).
Если флаг Checkout branch выбран, то мы попадем в нее сразу после создания

Идея покажет в какой ветке мы находимся, она должна измениться с master на hw3-task1

Слайд 14

Checkout Checkout необходим для смены ветки, при этом файлы в локальном

Checkout

Checkout необходим для смены ветки, при этом файлы в локальном

репозитории буду заменены необходымыми данными другой ветки. Файлы которых нет могут пропасть, новые появиться, но данные которые уже были коммитнуты (commit) никуда не пропадают, гит их хранит. IDEA при переходе между ветками если нет проблем, то просто переносит изменения, если есть проблемы – то предупреждает, в таком случае лучше сначала сделать commit и только потом менять ветку, чтобы не потерять данные.

При нажатии на название ветки (в правом нижнем углу), появляется следующее окно с опциями, и мы можем сделать Checkout в другую ветку.

Слайд 15

Ветвление от ветки Суть действия такая же как и ветвление от

Ветвление от ветки

Суть действия такая же как и ветвление от коммита,

просто для этого не нужна вкладка Git → Log

Для этого нужно в правом нижнем углу нажать на название ветки,
выбрать ветку от которой будем создавать новую,
New Branch from Selected

Аналогично ветвлению от коммита
вводим название новой ветки и
нажимаем создать

Слайд 16

Теперь в Log модно видеть один коммит является последним для веток master, hw3-task1, hw3-task2

Теперь в Log модно видеть один коммит является последним для веток

master, hw3-task1, hw3-task2
Слайд 17

Пример ветки 1 (задание 1) 1) Мы создали ветку (любым способом

Пример ветки 1 (задание 1)

1) Мы создали ветку (любым способом и

перешли в нее [checkout])
2) Создадим необходимую нам папку для исходников. Src
3) если он не выделена цветом, то необходимо пометить ее как Source
Слайд 18

Создание новых файлов и добавление в git 1) Создаём необходимые пакеты

Создание новых файлов и добавление в git

1) Создаём необходимые пакеты и

решаем поставленную задачу.

2) Когда создаём новый файл git спросит добавить ли его в отслеживаемые,
если не добавить он будет красным и гит не будет предлагать его коммитнуть. Если
согласимся, он будет зеленём. (зеленый[новые файлы] и синий[отредактированные]
- отслеживаемые)

Слайд 19

Ручное добавление файла Если случайно не добавили файл в git, либо

Ручное добавление файла

Если случайно не добавили файл в git, либо специально,

можно самостоятельно его добавить. Во вкладке Log он находится не в Default Changelist, а в Unversioned Files. Нажимаем ПКМ по файлу и выбираем Add to VCS (если нажали в списке Unversioned Files) либо ПКМ по файлу и Git → Add (если нажали в списке слева)

В итоге он попадет в список
Default Changelist

Слайд 20

Делаем коммит и пуш При пуше видно, что отправляем изменения ветки

Делаем коммит и пуш

При пуше видно, что отправляем изменения ветки hw3-task1

в origin : hw3-task1 (ветки в
Удалённом репозиториии ещё нет, и идея говорит что она будет создана New).
Из нового – только 1 коммит в списке ниже.
Слайд 21

Проверяем на github

Проверяем на github

Слайд 22

После создания класса с методом main и выполнения, создаётся исключенная ранее папка out.

После создания класса с
методом main и выполнения,
создаётся исключенная ранее папка

out.
Слайд 23

Проверяем, что ветка master не изменила состояние

Проверяем, что ветка master не изменила состояние

Слайд 24

Ветвление в IDEA Во вкладке Git есть раздел Log, в нем

Ветвление в IDEA

Во вкладке Git есть раздел Log, в нем отображается

дерево коммитов
и маркируются ветки.
Создавать ветку в гите можно от любого коммита. Поэтому при нажатии ПКМ на коммит
из списка есть вариант New Branch...
Слайд 25

Создаём ветку для следующего задания 1) Можно сделать ветку от коммита

Создаём ветку для следующего задания

1) Можно сделать ветку от коммита (слайд

13)
2) Можно сделать ветку от ветки (слайд 16)

Ещё раз пройдём путём 1.
Если сравнить скриншоты,
то видно, что первый сверху
коммит это последний коммит
в ветку hw3-task1.
Нас же интересует создание
новой ветки от master, поэтому
мы должны выбрать второй коммит,
который является последним для master, и
создать новую ветку hw3-task2

Слайд 26

После создания ветки и присвоения ей названия Видим что в списке

После создания ветки и присвоения ей названия

Видим что в списке появилась
ветка

hw3-task2, которую
создавали на предыдущем слайде

И папка scr и всё ее содержимое “пропало”

Слайд 27

Выполнение задания 2 1) Повторяем создание папки src, как на слайде

Выполнение задания 2

1) Повторяем создание папки src, как на слайде 17.

2)

Создаём необходимые пакеты и решаем поставленную задачу.

3) Когда создаём новый файл помним про слайды 18-19.

Слайд 28

Абстракция

Абстракция

Слайд 29

Первый наследник

Первый наследник

Слайд 30

Второй наследник

Второй наследник

Слайд 31

Проверка работы

Проверка работы

Слайд 32

Вывод в консоль

Вывод в консоль

Слайд 33

Делаем новый коммит Меняем текст сообщения, убеждаемся что в списке сверху

Делаем новый коммит

Меняем текст сообщения, убеждаемся что в списке сверху все

необходимые файлы.

Делаем Commit и Push

Слайд 34

Пуш из ветки hw3-task2 в новую ветку origin : hw3-task2 Из изменений только 1 наш коммит.

Пуш из ветки hw3-task2 в новую ветку origin : hw3-task2
Из изменений

только 1 наш коммит.
Слайд 35

Проверяем на github

Проверяем на github