Hermes Revision System - современная система контроля версий
Project description
HRS - Hermes Revision System
Современная и эффективная система контроля версий, написанная на Python.
Возможности
- 📦 Базовые операции контроля версий (init, add, commit, status)
- 🌳 Ветвление и слияние (branch, checkout, merge)
- 🏷️ Теги для маркировки важных версий
- 🔄 Система хуков для автоматизации
- 📚 Управление подмодулями
- 📝 Стэш для временного сохранения изменений
- 📊 Визуализация структуры репозитория и истории коммитов
- 🌐 Работа с удаленными репозиториями
- 🚫 Система игнорирования файлов
Требования
- Python 3.8 или выше
- Graphviz (для визуализации)
Установка
Через pip
pip install hermes-revision-system
Установка Graphviz
Windows
winget install graphviz
macOS
brew install graphviz
Linux
sudo apt-get install graphviz # Debian/Ubuntu
sudo dnf install graphviz # Fedora
sudo pacman -S graphviz # Arch Linux
Использование
После установки команда hrs станет доступна глобально.
Основные команды
# Инициализация репозитория
hrs init
# Добавление файлов
hrs add <files>
# Создание коммита
hrs commit -m "commit message"
# Просмотр статуса
hrs status
# История коммитов
hrs log
Работа с ветками
# Создание ветки
hrs branch <name>
# Список веток
hrs branches
# Переключение веток
hrs checkout <branch>
# Слияние веток
hrs merge <branch> -m "merge message"
# Удаление ветки
hrs delete-branch <name>
Теги
# Создание тега
hrs tag create <name> -m "message"
# Список тегов
hrs tag list
# Удаление тега
hrs tag delete <name>
# Переключение на тег
hrs tag checkout <name>
Временное хранилище (stash)
# Сохранение изменений
hrs stash save -m "message"
# Список сохраненных изменений
hrs stash list
# Применение и удаление последнего stash
hrs stash pop
# Применение без удаления
hrs stash apply <index>
# Удаление stash
hrs stash drop <index>
# Очистка всего stash
hrs stash clear
Визуализация
# Граф структуры директорий
hrs graph tree output.png # Сохранить в файл
hrs graph tree -c # Вывести в консоль
hrs graph tree -c --ignore "__pycache__" # С игнорированием файлов
# Граф истории коммитов
hrs graph history output.png # Сохранить в файл
hrs graph history -f svg output.svg # В формате SVG
hrs graph history -n 10 output.png # Ограничить количество коммитов
Удаленные репозитории
# Добавление удаленного репозитория
hrs remote add <name> <url>
# Список удаленных репозиториев
hrs remote list
# Отправка изменений
hrs push <remote> <branch>
# Получение изменений
hrs pull <remote> <branch>
# Загрузка информации
hrs fetch <remote>
# Клонирование репозитория
hrs clone <url> [destination]
Игнорирование файлов
# Добавление паттерна
hrs ignore add "*.pyc"
# Удаление паттерна
hrs ignore remove "*.pyc"
# Список игнорируемых паттернов
hrs ignore list
# Создание стандартного .hrsignore
hrs ignore init
Разработка
- Клонируйте репозиторий
git clone https://github.com/SomeMedic/hermes-revision-system.git
cd hermes-revision-system
- Создайте виртуальное окружение
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
- Установите зависимости для разработки
pip install -e ".[dev]"
- Запустите тесты
pytest
Лицензия
MIT License. См. файл LICENSE для подробностей.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hermes_revision_system-0.1.0.tar.gz.
File metadata
- Download URL: hermes_revision_system-0.1.0.tar.gz
- Upload date:
- Size: 29.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21ef402790d01658df4744f4cc4645928d452a64abb9c2198925e32a3cf75002
|
|
| MD5 |
c06fc4de2cfb2e241147878b3e39aaf4
|
|
| BLAKE2b-256 |
a3f7336697c143fcef1a32aea19175a54e90a34f973965bf51b2690b0a40c4f9
|
File details
Details for the file hermes_revision_system-0.1.0-py3-none-any.whl.
File metadata
- Download URL: hermes_revision_system-0.1.0-py3-none-any.whl
- Upload date:
- Size: 35.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc7e6dcb324671f96ed6d6863ad1f8a6fbb977651694a016e7ce8dfe4646dd17
|
|
| MD5 |
5a42d435a42872a3a901bb071d0ead21
|
|
| BLAKE2b-256 |
31c9e4b8fc822d11284ecb57f1fef12ff4ac4c7fc7803c3053d76ecec78de4bc
|