Просмотр истории версий

Введение в Git

George Boorman

Curriculum Manager

Структура коммита

Коммит Git состоит из трёх частей:

  1. Commit

    • содержит метаданные: автора, сообщение и время коммита
  2. Tree

    • отслеживает имена и расположение файлов и каталогов в репозитории
    • как словарь: сопоставляет ключи с файлами и каталогами
  3. Blob
    • Binary Large OBject
    • может содержать данные любого типа
    • сжатый снимок содержимого файла
Введение в Git

Визуализация структуры коммита

Диаграмма с тремя коммитами: зафиксированные файлы показаны как часть дерева, каждый файл связан с blob последнего коммита

Введение в Git

Визуализация структуры коммита

Диаграмма первого коммита: дерево ссылается на отчёт и опрос по психическому здоровью, которые связаны со снимками содержимого каждого файла в blob

Введение в Git

Визуализация структуры коммита

Диаграмма первого и второго коммитов: второй коммит ссылается на отчёт, опрос и сводную статистику; отчёт связан с blob предыдущего коммита, остальные файлы — с blob второго коммита

Введение в Git

Визуализация структуры коммита

Диаграмма с тремя коммитами: зафиксированные файлы связаны с деревом, каждый файл — с blob последнего коммита, в котором он участвовал

Введение в Git

Хеш Git

Последний коммит: b22eb75a82a68b9c0f1c45b9f5a9b7abe281683a

  • Генератор псевдослучайных чисел—функция хеширования

  • Хеши позволяют совместно использовать данные между репозиториями

    • Если два файла одинаковы,
      • их хеши тоже совпадают
    • Git достаточно сравнить хеши
Введение в Git

Git log

git log
  • Показывает коммиты от новых к старым
commit ad8accfe94cb924444c488132bdef7c54b9bca68
Author: Rep Loop <[email protected]>
Date:   Wed Jul 24 07:48:27 2022 +0000

    Added reminder to cite funding sources.
:
  • Нажмите space, чтобы показать более ранние коммиты
  • Нажмите q, чтобы выйти из лога и вернуться в терминал
Введение в Git

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

Введение в Git

Preparing Video For Download...