| cli | |
| include | |
| AddCommand.hxx | Объявление класса AddCommand |
| BaseCommand.hxx | Объявление класса BaseCommand для всех команд в системе |
| BranchCommand.hxx | Объявление класса BranchCommand для управления ветками |
| ClearCommand.hxx | Объявление класса ClearCommand для удаления репозитория SVCS |
| CommandFactory.hxx | Объявление класса CommandFactory, который реализует фабричный шаблон для команд |
| HelpCommand.hxx | Объявление класса HelpCommand для отображения справочной информации о командах |
| HelpService.hxx | Сервис для предоставления справочной информации о командах |
| HistoryCommand.hxx | Объявление класса HistoryCommand для просмотра истории сохранений (коммитов) |
| ICommand.hxx | Объявление интерфейса ICommand для всех исполняемых CLI команд |
| InitCommand.hxx | Объявление класса InitCommand |
| MergeCommand.hxx | Объявление команды MergeCommand для слияния веток |
| RemoveCommand.hxx | Объявление класса RemoveCommand для удаления файлов из области подготовки |
| SaveCommand.hxx | Объявление класса SaveCommand для сохранения (коммита) подготовленных изменений |
| StatusCommand.hxx | Объявление класса StatusCommand для отображения статуса репозитория |
| UndoCommand.hxx | Объявление класса UndoCommand для отмены изменений |
| Utils.hxx | Служебные функции для условного вывода отладки |
| VersionCommand.hxx | Объявление класса VersionCommand для отображения информации о версии |
| src | |
| AddCommand.cxx | Реализация класса AddCommand, отвечающего за обработку команды 'svcs add' и подготовку файлов для следующего коммита |
| BranchCommand.cxx | Реализация BranchCommand для управления ветками |
| ClearCommand.cxx | Реализация класса ClearCommand для удаления репозитория SVCS |
| CommandFactory.cxx | Реализация класса CommandFactory, который отвечает за динамическое создание объектов ICommand и управление их жизненным циклом и зависимостями |
| HelpCommand.cxx | Реализация класса HelpCommand |
| HelpService.cxx | Реализация класса HelpService |
| HistoryCommand.cxx | Реализация класса HistoryCommand |
| InitCommand.cxx | Реализация класса InitCommand, отвечающего за обработку команды 'svcs init' и инициализацию нового репозитория SVCS |
| MergeCommand.cxx | Реализация MergeCommand для слияния веток |
| RemoveCommand.cxx | Реализация класса RemoveCommand для удаления файлов из области подготовки |
| SaveCommand.cxx | Реализация класса SaveCommand |
| StatusCommand.cxx | Реализация класса StatusCommand |
| UndoCommand.cxx | Реализация класса UndoCommand |
| VersionCommand.cxx | Реализация класса VersionCommand |
| core | |
| include | |
| Blob.hxx | Определяет класс Blob, представляющий необработанное содержимое файла в базе данных объектов СКВ |
| BranchManager.hxx | Declaration of the BranchManager class for handling version control branches |
| Commit.hxx | Определяет класс Commit, представляющий постоянный снимок в истории СКВ |
| Index.hxx | Определение структуры данных IndexEntry и структуры Index |
| ObjectStorage.hxx | Управляет чтением, записью и жизненным циклом объектов СКВ на диске с использованием формата Git |
| Repository.hxx | Управляет всем репозиторием системы контроля версий, действует как Subject для логирования событий и контролирует все основные операции СКВ |
| RepositoryManager.hxx | Declaration of the RepositoryManager class, managing all repository-level file operations |
| Tree.hxx | Определяет класс Tree, представляющий иерархическую структуру (состояние директории) репозитория СКВ |
| Utils.hxx | Определяет служебные функции для ядра SVCS |
| VcsObject.hxx | Определение абстрактного базового класса для всех объектов системы контроля версий |
| src | |
| Blob.cxx | Реализация класса Blob, основного объекта SVCS для хранения содержимого файлов |
| BranchManager.cxx | Реализация класса BranchManager |
| Commit.cxx | Реализация класса Commit, представляющего снимок истории в SVCS |
| Index.cxx | Реализация класса Index, управляющего областью подготовки и построением дерева коммитов |
| ObjectStorage.cxx | Реализация класса ObjectStorage, управляющего хранением и извлечением сжатых объектов VcsObject |
| Repository.cxx | Реализация класса Repository, который служит основным фасадом приложения и ядром логики для СКВ |
| RepositoryManager.cxx | Реализация класса RepositoryManager, обрабатывающего создание, инициализацию и утилиты очистки репозиториев высокого уровня |
| Tree.cxx | Реализация класса Tree, который представляет структуру директорий в SVCS и отображает имена на хеши объектов |
| Utils.cxx | Реализация общих служебных функций для файлового ввода/вывода и преобразования форматов хешей |
| integration | |
| include | |
| CompositeCommandFactory.hxx | Композитная фабрика, объединяющая несколько фабрик команд |
| src | |
| CompositeCommandFactory.cxx | Реализация класса CompositeCommandFactory |
| main.cxx | |
| platform | |
| include | |
| NetworkUtils.hxx | Cross-platform network utilities |
| server | |
| include | |
| HubCommand.hxx | Объявление класса HubCommand для создания центральных голых репозиториев |
| RemoteManager.hxx | Объявление класса RemoteManager и структуры Remote |
| RemoteProtocol.hxx | Объявление класса RemoteProtocol для обработки протокола удаленной связи |
| RepoCommand.hxx | Объявление класса RepoCommand |
| Server.hxx | Основной серверный компонент для обработки входящих Git-соединений |
| ServerBaseCommand.hxx | Базовый класс для команд администрирования сервера с использованием интерфейса ICommand |
| ServerCommandFactory.hxx | Объявление класса ServerCommandFactory для команд администрирования сервера |
| SSHConfig.hxx | Конфигурация SSH сервера |
| SSHServer.hxx | SSH сервер для удаленных операций SVCS |
| SSHSession.hxx | Обработчик SSH сессии |
| src | |
| HubCommand.cxx | Реализация класса HubCommand для создания голых репозиториев |
| RemoteManager.cxx | Реализация класса RemoteManager |
| RemoteProtocol.cxx | Реализация класса RemoteProtocol для протокола удаленной связи |
| RepoCommand.cxx | Реализация класса RepoCommand для управления конфигурациями удаленных репозиториев |
| Server.cxx | Реализация класса Server для удаленных операций SVCS |
| ServerBaseCommand.cxx | Реализация класса ServerBaseCommand |
| ServerCommandFactory.cxx | Реализация класса ServerCommandFactory |
| SSHConfig.cxx | Реализация SSH конфигурации |
| SSHServer.cxx | Реализация класса SSHServer для удаленных операций SVCS через SSH |
| SSHSession.cxx | |
| services | |
| logging | |
| Logger.cxx | Реализация класса Logger для потокобезопасной системы логирования |
| Logger.hxx | Определяет класс Logger, потокобезопасный Singleton, который действует как IObserver |
| Event.hxx | Определяет структуру события, используемую для уведомлений по шаблону Observer |
| EventBus.hxx | Реализация центральной шины событий (EventBus), действующей как ISubject |
| IObserver.hxx | Определяет интерфейс для компонента шаблона Observer |
| ISubject.hxx | Определяет интерфейс для компонента Subject (Издатель) шаблона Observer |
| tests | |
| cli | |
| mocks | |
| MockHelpService.hxx | Mock реализация интерфейса HelpService для целей модульного тестирования |
| MockHelpServiceAdapter.hxx | |
| MockSubject.hxx | Mock реализация интерфейса ISubject для целей модульного тестирования |
| utils | |
| ClearCommandTest.cxx | Тесты для команды 'clear'. Реализация методов тестового фикстура ClearCommandTest |
| ClearCommandTest.hxx | Объявление тестового фикстура для интеграционных тестов ClearCommand |
| InitCommandIntegrationTest.cxx | Интеграционные тесты для команды 'init' (InitCommand) и RepositoryManager |
| InitCommandIntegrationTest.hxx | Объявление тестового фикстура для интеграционных тестов InitCommand |
| IntAddCommandTest.cxx | Реализация интеграционного тестового фикстура AddCommandTest |
| IntAddCommandTest.hxx | |
| IntHelpCommandTest.hxx | |
| IntHistoryCommandTest.cxx | Реализация интеграционных тестов для класса HistoryCommand |
| IntHistoryCommandTest.hxx | Заголовок тестового фикстура для интеграционных тестов класса HistoryCommand |
| IntRemoveCommandTest.cxx | Реализация интеграционных тестов для класса RemoveCommand |
| IntRemoveCommandTest.hxx | Заголовок тестового фикстура для интеграционных тестов класса RemoveCommand |
| IntSaveCommandTest.cxx | Реализация интеграционных тестов для класса SaveCommand |
| IntSaveCommandTest.hxx | Заголовок тестового фикстура для интеграционных тестов класса SaveCommand (коммит) |
| IntStatusCommandTest.cxx | Реализация интеграционных тестов для класса StatusCommand |
| IntStatusCommandTest.hxx | Заголовок тестового фикстура для интеграционных тестов класса StatusCommand |
| IntUndoCommandTest.cxx | Реализация интеграционных тестов для класса UndoCommand, сфокусированная на принудительных операциях |
| IntUndoCommandTest.hxx | Заголовок тестового фикстура для интеграционных тестов класса UndoCommand |
| IntVersionCommandTest.cxx | Реализация интеграционных тестов для класса VersionCommand |
| IntVersionCommandTest.hxx | Заголовок тестового фикстура для интеграционных тестов класса VersionCommand |
| AddCommandTest.cxx | Тесты для команды 'add' (AddCommand) с использованием Google Test |
| ClearCommandTest.cxx | Тесты для команды 'clear' (ClearCommand) с использованием Google Test |
| HelpCommandTest.cxx | Модульные тесты для класса HelpCommand |
| HistoryCommandTest.cxx | Интеграционные тесты для класса HistoryCommand, охватывающие основную функциональность, параметры формата, обработку ограничений и валидацию аргументов |
| InitCommandTest.cxx | Реализация методов фикстура InitCommandIntegrationTest |
| SaveCommandTest.cxx | Интеграционные тесты для класса SaveCommand (коммит) |
| StatusCommandTest.cxx | Интеграционные тесты для класса StatusCommand |
| VersionCommandTest.cxx | Модульные тесты для класса VersionCommand |
| core | |
| utils | |
| MockSubject.hxx | Mock реализация ISubject для целей тестирования |
| BlobTest.cxx | Модульные тесты для класса Blob, проверяющие построение объектов, вычисление хэшей и целостность данных |
| BranchManagerTest.cxx | Реализация модульных тестов для класса BranchManager |
| CommitTest.cxx | Модульные тесты для класса Commit, проверяющие построение объектов, стабильность хэшей (порядок родителей) и целостность сериализации/десериализации |
| IndexTest.cxx | Модульные тесты для класса Index, проверяющие управление областью индексации, отслеживание изменений файлов и сохранение индекса |
| ObjectTest.cxx | Модульные тесты для основной логики хэширования абстрактного базового класса VcsObject |
| RepoManagerTest.cxx | Модульные тесты для класса RepositoryManager |
| RepositoryTest.cxx | Модульные тесты для класса Repository, охватывающие инициализацию, создание структуры файловой системы и реализацию шаблона Subject/Observer |
| StorageTest.cxx | Модульные тесты для класса ObjectStorage, проверяющие сохранение, генерацию путей файлов, сжатие и целостность загрузки объектов для всех типов VcsObject (Blob, Tree, Commit) |
| TreeTest.cxx | Модульные тесты для класса Tree, проверяющие построение объектов, каноническую сортировку, управление записями и целостность сериализации/десериализации |
| server | |
| RemoteProtocolTest.cxx | Google Тесты для класса RemoteProtocol |
| SSHServerTest.cxx | Unit tests for SSHServer class |
| SSHSessionTest.cxx | Unit tests for SSHSession class |