Перейти к основному содержимому

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

9 февраля 2026

Оглавление

  1. Зачем нужна история изменений
  2. Просмотр истории
  3. Откат изменений
  4. Восстановление удалённых файлов
  5. Сравнение версий
  6. Работа с метками (tags)
  7. Отмена последнего коммита
  8. Восстановление предыдущих версий

Зачем нужна история изменений

История изменений позволяет отслеживать все модификации документации и при необходимости вернуться к любой предыдущей версии.

Преимущества ведения истории:

ПреимуществоОписание
🔒 БезопасностьВсегда можно откатить неудачные изменения
📊 ОтслеживаниеВидно кто, когда и что изменил
🔍 АнализМожно проследить эволюцию документации
🤝 ОтветственностьКаждое изменение закреплено за автором
ОткатБыстрое восстановление рабочих версий

Как хранится история:

В Git история хранится в виде коммитов. Каждый коммит содержит:

  • Уникальный идентификатор (SHA)
  • Автора и дату
  • Список изменённых файлов
  • Описание изменений (commit message)

Просмотр истории

Через веб-интерфейс GitHub:

  1. Откройте файл на GitHub
  2. Нажмите кнопку "History" (история) или перейдите на вкладку "Commits"
  3. Просмотрите список всех коммитов для этого файла

Информация в списке коммитов:

ЭлементОписание
Зелёная галочка — коммит проверен
Красный крестик — есть ошибки
SHAУникальный идентификатор коммита
АвторКто сделал изменения
ДатаКогда были внесены изменения
СообщениеОписание изменений

Фильтрация истории:

  • По автору: нажмите на аватар автора
  • По дате: используйте календарь
  • По ветке: выберите ветку из выпадающего списка

Просмотр конкретной версии:

  1. Найдите нужный коммит в истории
  2. Нажмите на SHA коммита (например, a1b2c3d)
  3. Вы увидите состояние файла на этот момент
  4. Нажмите "View file" для просмотра

Откат изменений

Откат одного файла:

  1. Откройте историю файла
  2. Найдите нужный коммит
  3. Нажмите на иконку (...) справа от коммита
  4. Выберите "View file""Raw" (сырой файл)
  5. Скопируйте содержимое
  6. Вернитесь к файлу, нажмите "Edit"
  7. Вставьте старую версию
  8. Создайте коммит с описанием: revert: Restore version from commit SHA

Откат через браузер (проще):

  1. Откройте файл на GitHub
  2. Перейдите на вкладку "Commits"
  3. Найдите нужный коммит
  4. Нажмите "Browse files" для просмотра состояния на тот момент
  5. Нажмите кнопку "History" и выберите более ранний коммит
  6. Используйте "Edit" для внесения старой версии

Откат всего репозитория:

Для полного отката используйте команды Git:

# Посмотреть историю
git log --oneline

# Откатить на конкретный коммит
git checkout <SHA-коммита> -- .

# Или создать новую ветку сold версией
git checkout -b revert-branch <SHA-коммита>

Восстановление удалённых файлов

Способ 1: Через историю

  1. Перейдите в папку, где был файл
  2. Нажмите "History"
  3. Найдите последний коммит, где файл ещё существовал
  4. Откройте файл
  5. Нажмите "Raw", скопируйте содержимое
  6. Создайте новый файл с тем же именем
  7. Сделайте коммит с описанием: restore: Recover deleted file NAME

Способ 2: Через поиск

  1. Нажмите клавишу "." для открытия в Codeview
  2. Используйте Ctrl+Shift+F (Cmd+Shift+F) для поиска
  3. Введите название файла
  4. Перейдите на вкладку "Commits"
  5. Найдите коммит с удалением
  6. Нажмите "Browse files" для просмотра состояния до удаления

Восстановление нескольких файлов:

# Посмотреть удалённые файлы
git log --diff-filter=D --summary

# Восстановить конкретный файл
git checkout <SHA-коммита>^ -- путь/к/файлу

Сравнение версий

Просмотр изменений между коммитами:

  1. Откройте вкладку "Commits" репозитория
  2. Выберите два коммита (удерживайте Shift)
  3. Нажмите "Compare"

Просмотр изменений для одного файла:

  1. Откройте историю файла
  2. Выберите два коммита
  3. Нажмите "Compare revisions"

Что показывает сравнение:

СимволЗначение
🟢Зелёный — добавлено
🔴Красный — удалено
🔵Синий — изменено

Просмотр diff в браузере:

  1. Откройте файл
  2. Перейдите на вкладку "Raw"
  3. Добавьте ?plain=1&format=patch к URL для скачивания diff

Работа с метками (tags)

Метки — это способ标记 важных версий документации (релизы,Major обновления).

Просмотр меток:

  1. Перейдите в репозиторий
  2. Нажмите "Releases" (вкладка справа от кода)
  3. Или перейдите по ссылке: https://github.com/USER/REPO/tags

Создание метки (для мейнтейнеров):

# Создать легковесную метку
git tag v1.0.0

# Создать аннотированную метку
git tag -a v1.0.0 -m "Version 1.0.0"

# Отправить метку на GitHub
git push origin v1.0.0

Использование меток для отката:

  1. Откройте "Releases"
  2. Найдите нужную версию
  3. Нажмите "View code" для просмотра состояния на тот момент
  4. Используйте файлы этой версии

Отмена последнего коммита

Внимание: Это действие изменяет историю Git. Используйте с осторожностью.

Отмена коммита на GitHub:

GitHub не позволяет напрямую отменить коммит через веб-интерфейс. Используйте:

git reset --soft HEAD~1

Это отменит последний коммит, но сохранит изменения в рабочей директории.

Отмена с потерей изменений:

git reset --hard HEAD~1

Внимание: Эта команда удаляет все изменения в файлах!

Создание нового коммита с отменой:

git revert HEAD

Создаёт новый коммит, который отменяет изменения последнего коммита. Безопаснее для общей истории.


Восстановление предыдущих версий

Восстановление файла из конкретного коммита:

  1. Откройте историю файла
  2. Найдите нужный коммит
  3. Нажмите на SHA коммита
  4. Нажмите "View raw" для скачивания
  5. Скопируйте содержимое в текущую версию файла

Восстановление всего репозитория:

# Список всех коммитов
git log --all --graph --oneline

# Восстановить состояние на момент коммита
git checkout <SHA> -- .

# Или создать новую ветку
git checkout -b backup-branch <SHA>

Восстановление после слияния:

# Посмотреть все слияния
git log --merges

# Откатить слияние
git revert -m 1 <merge-commit-SHA>

Чек-лист для отката

ШагДействие
1Определите, какую версию нужно восстановить
2Найдите соответствующий коммит в истории
3Проверьте содержимое нужной версии
4Скопируйте содержимое
5Внесите изменения в текущий файл
6Создайте коммит с описанием revert: ...
7Проверьте изменения

См. также: