Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Система контроля версий Git

Автор:   •  Май 4, 2023  •  Лабораторная работа  •  1,069 Слов (5 Страниц)  •  117 Просмотры

Страница 1 из 5

Лабораторная работа №8.

«Система контроля версий Git, часть 3»

Цель работы: изучить ветвление в Git.

Практическая часть:

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

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

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

Выглядит это примерно так:

[pic 1]

  1. Создание веток

Давайте создадим новую ветку. Для этого выполним в Git-репозитории следующую команду:

git branch awesome-branch

После того как вы создали новую ветку, состояние репозитория выглядит следующим образом:

[pic 2]

При этом история репозитория никак не изменилась. Произошло только создание нового указателя на уже существующий коммит.

Но если веток несколько и можно с ними по-разному взаимодействовать, то как Git узнаёт, в какую ветку необходимо вносить изменения? Есть какая-то

«текущая»?

Да, действительно есть. Git хранит специальный указатель, который называется HEAD (верхушка). HEAD указывает на локальную ветку, на которой вы находитесь.

В данный момент вы всё ещё находитесь на ветке master. А как же awesome- branch? Команда git branch только создала новую ветку, она не переключила вас на неё. Так что, учитывая новое знание о HEAD, состояние системы на данный момент, на самом деле, выглядит так:

[pic 3]

Чтобы перейти на существующую ветку, необходимо выполнить следующую команду:

git checkout awesome-branch

Терминал зафиксирует результат сообщением:

[pic 4]

Как вы могли догадаться, после переключения HEAD указывает на другую ветку:

[pic 5]

Команда git checkout позволяет вам перемещаться между ветками, которые уже были созданы. Когда вы переключаетесь на ветку, то файлы в вашей рабочей директории меняются в соответствии с той версией, на которую указывает выбранная ветка. Все новые коммиты будут теперь добавляться в текущую ветку, пока вы снова не переключитесь на другую.

  1. Ветвление и коммиты слияния

Допустим, мы работаем над веб-сайтом. Предположим, что скоро Чёрная пятница и нам надо создать для работы над изменениями специальную ветку. Непосредственно перед днём распродаж надо будет сделать так, чтобы наши изменения попали к пользователям.

Представим, что работа над проектом ведётся уже какое-то время и вы уже имеете несколько коммитов:[pic 6]

Чтобы приступить к работе над изменениями для Чёрной пятницы, создадим специальную ветку:

git branch black-friday

*Если вы ошиблись в названии, например, допустили опечатку, вы можете изменить название ветки с помощью команды: git branch -m старое- имя-ветки новое-имя-ветки.

И сразу переключимся на эту ветку:

git checkout black-friday

После выполнения этих команд состояние репозитория изменится.

После этого мы можем менять файлы проекта и не бояться, что наш сайт как-то пострадает, ведь мы делаем это в изолированной ветке.

...

Скачать:   txt (13.5 Kb)   pdf (281.9 Kb)   docx (118.6 Kb)  
Продолжить читать еще 4 страниц(ы) »
Доступно только на Essays.club