Изменение и сравнение веток

Средний уровень Git

George Boorman

Curriculum Manager, DataCamp

Краткий обзор git diff

Команда Функция
git diff Показать изменения между всеми неиндексированными файлами и последним коммитом
git diff report.md Показать изменения между неиндексированным файлом и последним коммитом
git diff --staged Показать изменения между всеми индексированными файлами и последним коммитом
git diff --staged report.md Показать изменения между индексированным файлом и последним коммитом
git diff 35f4b4d 186398f Показать изменения между двумя коммитами по их хешам
git diff HEAD~1 HEAD~2 Показать изменения между двумя коммитами с помощью HEAD вместо хешей
Средний уровень Git

Сравнение веток

git diff main summary-statistics
Средний уровень Git

Вывод git diff

Вывод git diff main summary-statistics, усечённый

Средний уровень Git

Вывод git diff

Вывод git diff main summary-statistics, вторая часть

Средний уровень Git

Навигация в большом выводе git

  • Вывод может быть очень большим!
  • Нажмите space для прокрутки и q для выхода
Средний уровень Git

Изменение веток

git branch
  main
* feature_dev
  • feature_dev

  • Нужна ещё одна ветка для второй новой функции

  • Решение — переименовать feature_dev

  • Переименование ветки

git branch -m
Средний уровень Git

Переименование ветки

git branch
  main
* feature_dev
  • feature_dev

  • Нужна ещё одна ветка для второй новой функции

  • Решение — переименовать feature_dev

  • Переименование ветки
git branch -m feature_dev chatbot
Средний уровень Git

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

git branch
  main
* chatbot
Средний уровень Git

Удаление ветки

  • В крупных проектах веток бывает много

  • Удаляйте ветки, когда работа с ними завершена

  • Удалите ветку chatbot с флагом -d

git branch -d chatbot
Deleted branch chatbot (was 3edb989).
Средний уровень Git

Удаление ветки без слияния

  • Если chatbot не была слита в main, команда git branch -d chatbot выдаст ошибку
error: The branch 'chatbot' is not fully merged.
If you are sure you want to delete it, run 'git branch -D chatbot'.
  • Удалите с флагом -D
git branch -D chatbot
Deleted branch chatbot (was 3edb989).
  • Восстановить удалённую ветку сложно, но возможно

  • Убедитесь, что ветка больше не нужна, прежде чем удалять её!

Средний уровень Git

Итоги

Команда Функция
git diff main chatbot Сравнить состояние веток main и chatbot
git branch Вывести список всех веток
git branch -m old_name new_name Переименовать ветку old_name в new_name
git branch -d chatbot Удалить ветку chatbot, которая была слита
git branch -D chatbot Удалить ветку chatbot, которая не была слита
Средний уровень Git

Давайте потренируемся!

Средний уровень Git

Preparing Video For Download...