|
SVCS - Русская документация
|
Основные структуры данных СКВ и модель объектов. Подробнее...
Классы | |
| class | Blob |
| Представляет содержимое файла (Binary Large Object). Подробнее... | |
| class | BranchManager |
| Основной сервис для управления ветвями системы контроля версий (создание, удаление, переключение). Подробнее... | |
| class | Commit |
| Представляет единую, неизменяемую историческую точку (снимок) в истории репозитория. Подробнее... | |
| struct | CommitInfo |
| Структура, содержащая основные метаданные для одного коммита. Подробнее... | |
| class | Index |
| Управляет областью подготовки (Index) репозитория СКВ. Подробнее... | |
| struct | IndexEntry |
| Представляет одну запись файла в области подготовки (Index). Подробнее... | |
| class | ObjectStorage |
| Управляет базой данных объектов системы контроля версий, включая сохранение и восстановление объектов. Подробнее... | |
| class | Repository |
| Управляет структурой директорий системы контроля версий и основными операциями. Подробнее... | |
| class | RepositoryManager |
| Управляет всеми физическими операциями с файлами и директориями в репозитории SVCS. Подробнее... | |
| class | TestableObject |
| Вспомогательный класс для тестирования неабстрактных методов VcsObject. Подробнее... | |
| class | Tree |
| Представляет состояние директории в СКВ, реализуя контракт VcsObject. Подробнее... | |
| struct | TreeEntry |
| Представляет отдельный элемент (файл или поддиректорию) внутри объекта Tree. Подробнее... | |
| class | VcsObject |
| Абстрактный базовый класс, представляющий любой сохраняемый, адресуемый объект в СКВ. Подробнее... | |
Функции | |
| TreeEntry | createEntry (std::string name, std::string hash_id) |
| Создание записи дерева. | |
| std::string | read_file_to_string (const fs::path &full_path) |
| Читает всё содержимое файла в одну строку std::string. | |
| std::string | binary_to_hex_string (const unsigned char *binary_data, size_t length) |
| Преобразует бинарный буфер (например, сырой хеш SHA-1) в его шестнадцатеричное строковое представление. | |
| std::string | hex_to_binary_string (const std::string &hex_string) |
| Преобразует шестнадцатеричную строку (например, 40 символов) в её сырое бинарное байтовое представление (например, 20 байт). | |
| std::string | compute_sha256 (const std::string &input) |
| Вычисляет хеш SHA-256 для заданных входных данных. | |
Переменные | |
| const size_t | CHUNK_SIZE = 16384 |
| constexpr size_t | HASH_BYTE_SIZE = 32 |
Основные структуры данных СКВ и модель объектов.
Содержит фундаментальные типы объектов СКВ, такие как Blob, Tree, Commit, которые формируют строительные блоки системы контроля версий.
| std::string svcs::core::binary_to_hex_string | ( | const unsigned char * | binary_data, |
| size_t | length ) |
Преобразует бинарный буфер (например, сырой хеш SHA-1) в его шестнадцатеричное строковое представление.
| binary_data | Указатель на сырые бинарные данные. |
| length | Длина бинарных данных в байтах (например, 20 для SHA-1). |
| std::string svcs::core::compute_sha256 | ( | const std::string & | input | ) |
Вычисляет хеш SHA-256 для заданных входных данных.
| input | Входные данные для хеширования. |
| TreeEntry svcs::core::createEntry | ( | std::string | name, |
| std::string | hash_id ) |
Создание записи дерева.
| name | Имя файла или поддиректории. |
| hash_id | Хеш-идентификатор (SHA-256). |
| std::string svcs::core::hex_to_binary_string | ( | const std::string & | hex_string | ) |
Преобразует шестнадцатеричную строку (например, 40 символов) в её сырое бинарное байтовое представление (например, 20 байт).
| hex_string | Входная шестнадцатеричная строка. Должна иметь чётную длину. |
| std::runtime_error | если входная строка имеет нечётную длину или содержит недопустимые шестнадцатеричные символы. |
| std::string svcs::core::read_file_to_string | ( | const fs::path & | full_path | ) |
Читает всё содержимое файла в одну строку std::string.
Эта служебная функция предназначена для чтения файлов малого и среднего размера и является критически важной для создания содержимого VcsObject (например, Blobs). Она открывает файл в бинарном режиме, чтобы гарантировать корректное чтение всех символов на всех платформах.
| full_path | Полный, абсолютный путь к файлу на диске. |
| std::runtime_error | Если файл не может быть открыт для чтения. |