Git

Git — система контроля версий. Популярна потому что с ветками очень легко работать, потому что распределенная итд. Команды git и что они делают: git init git commit git clone git push git pull git fetch git merge git rebase git cherry-pick git branch git reset с аргументами (soft, mixed, hard) git revert

Отличия типов слияния (различия merge, rebase, cherry-pick): если история изменений отличается, то merge создаст новый коммит rebase применит их подряд по времени исполнения cherry-pick — взять какой-то коммит и применить его в текущей ветке в конце

Состояние файлов в процессе работы с гитом (untracked, modified, committed, stage)

Из чего состоит коммит?

Коммит (commit) - это некоторое изменение, которое вносится в репозиторий (хранилище) кода. Обычно каждый коммит состоит из следующих элементов:

  1. Набор изменений: каждый коммит содержит изменения, внесенные в код, такие как новые файлы, изменения существующих файлов и удаление файлов.
  2. Сообщение: каждый коммит также содержит сообщение, описывающее изменения, внесенные в код. Сообщение должно быть написано на человеческом языке и давать понятное описание того, что было сделано.
  3. Информация о разработчике: каждый коммит также содержит информацию о том, кто сделал эти изменения. Обычно это включает имя и электронный адрес разработчика.
  4. Дата: каждый коммит также содержит дату, когда был сделан этот коммит

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

Если внесли изменения и закоммитили их, то и какой-то файл оказался лишним в этом коммите, то как откатить изменения по одному из файлов?

  1. Откройте терминал и перейдите в каталог с вашим проектом.
  2. Выполните команду git log, чтобы посмотреть список последних коммитов. Найдите коммит, в котором вы хотите откатить изменения, и запишите его хеш (уникальный идентификатор).
  3. Выполните команду git checkout <hash> <file>, где <hash> - это хеш коммита, а <file> - имя файла, изменения в котором вы хотите откатить. Это восстановит файл из выбранного коммита.
  4. Если вы хотите сохранить эти изменения, необходимо сделать новый коммит с восстановленным файлом. Выполните команду git add <file> для добновления файла в индексе, затем git commit -m "Reverted changes to <file>", чтобы создать новый коммит с откатом изменений.

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

Также стоит отметить, что этот процесс откатывает только изменения в файле. Если вы хотите откатить все изменения, внесенные в коммит, вы можете воспользоваться командой git revert <hash>, где <hash> - это хеш коммита, который вы хотите откатить. Эта команда создаст новый коммит, который отменяет все изменения, сделанные в выбранном коммите. Обратите внимание, что это не удаляет коммит из истории, а просто создает новый коммит, который отменяет его изменения.

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