SVCS - Русская документация
Загрузка...
Поиск...
Не найдено
Класс svcs::server::RemoteManager

Управляет конфигурациями удаленных репозиториев. Подробнее...

#include <RemoteManager.hxx>

Открытые члены

 RemoteManager (const fs::path &repo_path)
 Конструирует RemoteManager и загружает существующие удаленные репозитории.
bool addRemote (const std::string &name, const std::string &url)
 Добавляет новую конфигурацию удаленного репозитория.
bool removeRemote (const std::string &name)
 Удаляет конфигурацию удаленного репозитория по имени.
bool hasRemote (const std::string &name) const
 Проверяет, существует ли удаленный репозиторий с заданным именем.
std::string getRemoteUrl (const std::string &name) const
 Получает URL настроенного удаленного репозитория.
std::vector< std::string > listRemotes () const
 Перечисляет имена всех настроенных удаленных репозиториев.
void save () const
 Сохраняет текущие конфигурации удаленных репозиториев обратно в файл конфигурации.
void load ()
 Загружает (или перезагружает) конфигурации удаленных репозиториев из файла конфигурации.
size_t count () const
 Получает количество настроенных удаленных репозиториев.

Подробное описание

Управляет конфигурациями удаленных репозиториев.

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

Конструктор(ы)

◆ RemoteManager()

svcs::server::RemoteManager::RemoteManager ( const fs::path & repo_path)
explicit

Конструирует RemoteManager и загружает существующие удаленные репозитории.

Аргументы
repo_pathКорневой путь репозитория (например, "/path/to/my-project"), не директория .svcs.

Конструктор устанавливает путь к файлу конфигурации (repo_path / ".svcs" / "config") и автоматически вызывает load() для заполнения списка удаленных репозиториев.

Методы

◆ addRemote()

bool svcs::server::RemoteManager::addRemote ( const std::string & name,
const std::string & url )

Добавляет новую конфигурацию удаленного репозитория.

Аргументы
nameКороткое имя для нового удаленного репозитория (например, "origin").
urlURL для нового удаленного репозитория.
Возвращает
bool True если удаленный репозиторий был успешно добавлен, false если удаленный репозиторий с таким именем уже существует.

◆ count()

size_t svcs::server::RemoteManager::count ( ) const
inline

Получает количество настроенных удаленных репозиториев.

Возвращает
size_t Количество удаленных репозиториев.

◆ getRemoteUrl()

std::string svcs::server::RemoteManager::getRemoteUrl ( const std::string & name) const

Получает URL настроенного удаленного репозитория.

Аргументы
nameИмя удаленного репозитория.
Возвращает
std::string URL если удаленный репозиторий найден, иначе пустая строка.

◆ hasRemote()

bool svcs::server::RemoteManager::hasRemote ( const std::string & name) const

Проверяет, существует ли удаленный репозиторий с заданным именем.

Аргументы
nameИмя удаленного репозитория для проверки.
Возвращает
bool True если удаленный репозиторий существует, false в противном случае.

◆ listRemotes()

std::vector< std::string > svcs::server::RemoteManager::listRemotes ( ) const

Перечисляет имена всех настроенных удаленных репозиториев.

Возвращает
std::vector<std::string> Вектор, содержащий имена всех удаленных репозиториев.

◆ load()

void svcs::server::RemoteManager::load ( )

Загружает (или перезагружает) конфигурации удаленных репозиториев из файла конфигурации.

Этот метод очищает текущий кэш в памяти и анализирует файл конфигурации для его заполнения.

◆ removeRemote()

bool svcs::server::RemoteManager::removeRemote ( const std::string & name)

Удаляет конфигурацию удаленного репозитория по имени.

Аргументы
nameКороткое имя удаленного репозитория для удаления.
Возвращает
bool True если удаленный репозиторий был найден и удален, false в противном случае.

◆ save()

void svcs::server::RemoteManager::save ( ) const

Сохраняет текущие конфигурации удаленных репозиториев обратно в файл конфигурации.

Этот метод перезаписывает разделы удаленных репозиториев в файле конфигурации текущим состоянием в памяти.


Объявления и описания членов классов находятся в файлах: