# 🚀 RVS - Robust Versioning System
[](https://python.org)
[](https://github.com/rvs-rvs/rvs)
[](LICENSE)
[](#)
**RVS (Robust Versioning System)** brings Git-style version control to environments where traditional solutions fall short. Built entirely in Python, RVS trades execution speed for universal compatibility and deployment simplicity.
**Built for Flexibility**:
- ✅ Functions in isolated environments (containers, embedded systems, restricted networks)
- ✅ Zero dependency installation
- ✅ Predictable behavior across all Python-supported platforms
- ✅ Simplified deployment pipeline
**Local-Centric Design**: RVS concentrates on local repository management without remote connectivity features. This focused approach makes it ideal for:
- Offline development workflows
- Edge computing and IoT applications
- Educational and training environments
- Scenarios with network limitations or security constraints
- Personal project archiving and backup systems
## 🆕 What's New in v2.1.1
**Enhanced Worktree Support**: Complete Git-compatible worktree implementation
- Full worktree lifecycle management (add, list, remove, lock/unlock)
- Git-compatible `.rvs` file structure for seamless interoperability
- Independent HEAD, index, and working directory per worktree
**Detached HEAD Operations**: Comprehensive support for detached HEAD workflows
- Checkout commits directly with `--detach` option
- Create branches from detached HEAD state
- Proper status display and commit operations in detached mode
**New Git Commands**: Extended command set for better Git compatibility
- `rvs show` - Display commit information with multiple output formats
- `rvs diff-tree` - Compare tree objects between commits
- `rvs reset` - Reset HEAD, index, and working tree with `--soft`, `--mixed`, `--hard` modes
**Improved Reliability**: Enhanced error handling and cross-platform compatibility
- Better path normalization for Windows/Linux/macOS
- Robust index state management
- Improved uncommitted changes detection
## ✨ Features
- 🔧 **Complete Git-like Interface** - Familiar commands and workflows
- 🐍 **Self-Contained Architecture** - Zero external dependencies required
- 📦 **Universal Installation** - Install via pip or run directly on any Python platform
- 🌳 **Full Branching Support** - Create, switch, and merge branches with detached HEAD support
- 📝 **Staging Area** - Add and commit changes with precision
- 📚 **Commit History** - View and navigate project history
- 🔄 **Advanced Operations** - Rebase, stash, comprehensive worktree management
- 🏢 **Multi-Worktree Support** - Git-compatible worktree functionality for parallel development
- 🎯 **Detached HEAD Operations** - Full support for detached HEAD workflows
- 🛠️ **Extensible Architecture** - Clean, modular codebase
- 🎯 **Local-First Design** - Focused on local operations without remote dependencies
## 🚀 Quick Start
### Installation
#### From PyPI (Recommended)
```bash
# Install from PyPI
pip install rvs
```
#### From Source
```bash
# Clone the repository
git clone https://github.com/rvs-rvs/rvs.git
cd rvs
# Install using pip
pip install .
# Or install in development mode
pip install -e .
```
### Basic Usage
```bash
# Initialize a new repository
rvs init
# Add files to staging area
rvs add file.txt
rvs add .
# Create a commit
rvs commit -m "Initial commit"
# Check repository status
rvs status
# View commit history
rvs log
```
## 📋 Available Commands
RVS supports all essential local Git operations:
| Command | Description | Example |
|---------|-------------|---------|
| `init` | Initialize a new repository | `rvs init` |
| `add` | Add files to staging area | `rvs add file.txt` |
| `commit` | Create a commit | `rvs commit -m "message"` |
| `status` | Show repository status | `rvs status` |
| `log` | Show commit history | `rvs log` |
| `show` | Display commit information | `rvs show HEAD --name-status` |
| `diff-tree` | Compare tree objects | `rvs diff-tree --name-status -r HEAD` |
| `reset` | Reset HEAD, index, and working tree | `rvs reset --hard HEAD~1` |
| `branch` | List or create branches | `rvs branch feature` |
| `checkout` | Switch branches or restore files | `rvs checkout main` |
| `merge` | Join development histories | `rvs merge feature` |
| `rebase` | Reapply commits on another base | `rvs rebase main` |
| `restore` | Restore working tree files | `rvs restore file.txt` |
| `rm` | Remove files from index/working tree | `rvs rm file.txt` |
| `ls-files` | Show files in index and working tree | `rvs ls-files` |
| `ls-tree` | List contents of tree objects | `rvs ls-tree HEAD` |
| `worktree` | Manage multiple working trees | `rvs worktree add ../feature` |
| `stash` | Stash changes temporarily | `rvs stash` |
## 💡 Usage Examples
### Basic Workflow
```bash
# Start a new project
mkdir my-project && cd my-project
rvs init
# Add some files
echo "Hello World" > hello.txt
rvs add hello.txt
rvs commit -m "Add hello.txt"
# Create and switch to a new branch
rvs branch feature
rvs checkout feature
# Make changes and commit
echo "Feature code" > feature.txt
rvs add feature.txt
rvs commit -m "Add feature"
# Switch back and merge
rvs checkout main
rvs merge feature
```
### Advanced Operations
```bash
# Stash uncommitted changes
rvs stash
# Work with multiple worktrees
rvs worktree add ../hotfix hotfix-branch
rvs worktree list
rvs worktree remove ../hotfix
# Detached HEAD operations
rvs checkout --detach HEAD~2
rvs checkout -b new-feature # Create branch from detached HEAD
# Reset operations
rvs reset --soft HEAD~1 # Reset HEAD only
rvs reset --mixed HEAD~1 # Reset HEAD and index (default)
rvs reset --hard HEAD~1 # Reset HEAD, index, and working tree
# Interactive rebase (reapply commits)
rvs rebase main
# Show commit details
rvs show HEAD --name-status # Show files changed in commit
rvs show HEAD --stat # Show diffstat
# Restore specific files from a commit
rvs restore --source=HEAD~1 file.txt
```
### Repository Management
```bash
# Check what's staged and unstaged
rvs status
# View detailed commit history
rvs log --oneline
# List all files tracked by RVS
rvs ls-files
# Examine tree structure
rvs ls-tree HEAD
```
## 🏢 Worktree Management
RVS provides comprehensive Git-compatible worktree functionality, allowing you to work on multiple branches simultaneously:
### Creating and Managing Worktrees
```bash
# Create a new worktree for a feature branch
rvs worktree add ../feature-branch feature
# Create a worktree in detached HEAD state
rvs worktree add ../hotfix HEAD~2
# List all worktrees
rvs worktree list
# Output:
# /path/to/main/repo abc1234 [main]
# /path/to/feature def5678 [feature]
# /path/to/hotfix ghi9012 (detached HEAD)
# Remove a worktree
rvs worktree remove ../feature-branch
# Lock/unlock worktrees
rvs worktree lock ../feature-branch
rvs worktree unlock ../feature-branch
```
### Worktree Benefits
- **Parallel Development**: Work on multiple features simultaneously
- **Git Compatibility**: Uses the same `.rvs` file structure as Git worktrees
- **Independent State**: Each worktree has its own HEAD, index, and working directory
- **Shared History**: All worktrees share the same commit history and branches
- **Detached HEAD Support**: Create worktrees in detached HEAD state for experimental work
### Detached HEAD Workflows
RVS fully supports detached HEAD operations for experimental development:
```bash
# Enter detached HEAD state
rvs checkout --detach HEAD~3
# Make experimental changes
echo "experimental feature" > experiment.txt
rvs add experiment.txt
rvs commit -m "Experimental feature"
# Create a branch from detached HEAD
rvs checkout -b experiment-branch
# Or return to a branch, leaving experimental commits
rvs checkout main
```
## 🏧 Architecture
RVS is built with a robust, modular architecture designed for reliability and portability:
```
rvs/
├── core/ # Core functionality
│ ├── repository.py # Repository management
│ ├── objects.py # Git object handling
│ ├── index.py # Staging area
│ ├── refs.py # Branch/tag references
│ └── hooks.py # Hook system
├── commands/ # Command implementations
│ ├── add.py # Add command
│ ├── commit.py # Commit command
│ ├── branch.py # Branch operations
│ └── ... # Other commands
├── cli.py # Command-line interface
└── exceptions.py # Custom exceptions
```
## 🔧 Command Line Options
```bash
usage: rvs [-h] [--repo REPO] [--version] {command} ...
RVS - Robust Versioning System
positional arguments:
{init,add,commit,status,log,show,diff-tree,reset,branch,checkout,merge,rebase,restore,rm,ls-files,ls-tree,worktree,stash}
Available commands
options:
-h, --help Show help message and exit
--repo REPO Repository path (default: current directory)
--version Show program's version number and exit
```
## 🤝 Contributing
We welcome contributions! Here's how you can help:
1. **Fork the repository**
2. **Create a feature branch** (`git checkout -b feature/amazing-feature`)
3. **Make your changes** and add tests
4. **Commit your changes** (`git commit -m 'Add amazing feature'`)
5. **Push to the branch** (`git push origin feature/amazing-feature`)
6. **Open a Pull Request**
### Development Setup
```bash
# Clone the repository
git clone https://github.com/rvs-rvs/rvs.git
cd rvs
# Install in development mode
pip install -e .
# Run tests (if available)
python -m pytest
# Run RVS directly
python -m rvs --help
```
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## 🙏 Acknowledgments
- Inspired by Git's elegant design and powerful functionality
- Built with Python's excellent standard library
- Thanks to the open-source community for inspiration and feedback
## 📞 Contact
- **Project**: [rvs-rvs/rvs](https://github.com/rvs-rvs/rvs)
- **Issues**: [GitHub Issues](https://github.com/rvs-rvs/rvs/issues)
- **Discussions**: [GitHub Discussions](https://github.com/rvs-rvs/rvs/discussions)
---
<div align="center">
**⭐ Star this repository if you find it useful! ⭐**
Made with ❤️ for robust, portable version control
</div>
Raw data
{
"_id": null,
"home_page": "https://github.com/rvs-rvs/rvs",
"name": "rvs",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "python git version-control python-3 pypi rvs vcs cli robust portable",
"author": "rvs-rvs",
"author_email": "mailto.rvs@usa.com",
"download_url": "https://files.pythonhosted.org/packages/4b/17/4d10feae6f3b3a6835ea61b10b2c9cb56d0c4e2112eb728f274dfe07749e/rvs-2.1.1.tar.gz",
"platform": null,
"description": "# \ud83d\ude80 RVS - Robust Versioning System\n\n[](https://python.org)\n[](https://github.com/rvs-rvs/rvs)\n[](LICENSE)\n[](#)\n\n**RVS (Robust Versioning System)** brings Git-style version control to environments where traditional solutions fall short. Built entirely in Python, RVS trades execution speed for universal compatibility and deployment simplicity.\n\n**Built for Flexibility**: \n- \u2705 Functions in isolated environments (containers, embedded systems, restricted networks)\n- \u2705 Zero dependency installation\n- \u2705 Predictable behavior across all Python-supported platforms \n- \u2705 Simplified deployment pipeline\n\n**Local-Centric Design**: RVS concentrates on local repository management without remote connectivity features. This focused approach makes it ideal for:\n- Offline development workflows\n- Edge computing and IoT applications\n- Educational and training environments \n- Scenarios with network limitations or security constraints\n- Personal project archiving and backup systems\n\n## \ud83c\udd95 What's New in v2.1.1\n\n**Enhanced Worktree Support**: Complete Git-compatible worktree implementation\n- Full worktree lifecycle management (add, list, remove, lock/unlock)\n- Git-compatible `.rvs` file structure for seamless interoperability\n- Independent HEAD, index, and working directory per worktree\n\n**Detached HEAD Operations**: Comprehensive support for detached HEAD workflows\n- Checkout commits directly with `--detach` option\n- Create branches from detached HEAD state\n- Proper status display and commit operations in detached mode\n\n**New Git Commands**: Extended command set for better Git compatibility\n- `rvs show` - Display commit information with multiple output formats\n- `rvs diff-tree` - Compare tree objects between commits\n- `rvs reset` - Reset HEAD, index, and working tree with `--soft`, `--mixed`, `--hard` modes\n\n**Improved Reliability**: Enhanced error handling and cross-platform compatibility\n- Better path normalization for Windows/Linux/macOS\n- Robust index state management\n- Improved uncommitted changes detection\n\n## \u2728 Features\n\n- \ud83d\udd27 **Complete Git-like Interface** - Familiar commands and workflows\n- \ud83d\udc0d **Self-Contained Architecture** - Zero external dependencies required\n- \ud83d\udce6 **Universal Installation** - Install via pip or run directly on any Python platform\n- \ud83c\udf33 **Full Branching Support** - Create, switch, and merge branches with detached HEAD support\n- \ud83d\udcdd **Staging Area** - Add and commit changes with precision\n- \ud83d\udcda **Commit History** - View and navigate project history\n- \ud83d\udd04 **Advanced Operations** - Rebase, stash, comprehensive worktree management\n- \ud83c\udfe2 **Multi-Worktree Support** - Git-compatible worktree functionality for parallel development\n- \ud83c\udfaf **Detached HEAD Operations** - Full support for detached HEAD workflows\n- \ud83d\udee0\ufe0f **Extensible Architecture** - Clean, modular codebase\n- \ud83c\udfaf **Local-First Design** - Focused on local operations without remote dependencies\n\n## \ud83d\ude80 Quick Start\n\n### Installation\n\n#### From PyPI (Recommended)\n\n```bash\n# Install from PyPI\npip install rvs\n```\n\n#### From Source\n\n```bash\n# Clone the repository\ngit clone https://github.com/rvs-rvs/rvs.git\ncd rvs\n\n# Install using pip\npip install .\n\n# Or install in development mode\npip install -e .\n```\n\n### Basic Usage\n\n```bash\n# Initialize a new repository\nrvs init\n\n# Add files to staging area\nrvs add file.txt\nrvs add .\n\n# Create a commit\nrvs commit -m \"Initial commit\"\n\n# Check repository status\nrvs status\n\n# View commit history\nrvs log\n```\n\n## \ud83d\udccb Available Commands\n\nRVS supports all essential local Git operations:\n\n| Command | Description | Example |\n|---------|-------------|---------|\n| `init` | Initialize a new repository | `rvs init` |\n| `add` | Add files to staging area | `rvs add file.txt` |\n| `commit` | Create a commit | `rvs commit -m \"message\"` |\n| `status` | Show repository status | `rvs status` |\n| `log` | Show commit history | `rvs log` |\n| `show` | Display commit information | `rvs show HEAD --name-status` |\n| `diff-tree` | Compare tree objects | `rvs diff-tree --name-status -r HEAD` |\n| `reset` | Reset HEAD, index, and working tree | `rvs reset --hard HEAD~1` |\n| `branch` | List or create branches | `rvs branch feature` |\n| `checkout` | Switch branches or restore files | `rvs checkout main` |\n| `merge` | Join development histories | `rvs merge feature` |\n| `rebase` | Reapply commits on another base | `rvs rebase main` |\n| `restore` | Restore working tree files | `rvs restore file.txt` |\n| `rm` | Remove files from index/working tree | `rvs rm file.txt` |\n| `ls-files` | Show files in index and working tree | `rvs ls-files` |\n| `ls-tree` | List contents of tree objects | `rvs ls-tree HEAD` |\n| `worktree` | Manage multiple working trees | `rvs worktree add ../feature` |\n| `stash` | Stash changes temporarily | `rvs stash` |\n\n## \ud83d\udca1 Usage Examples\n\n### Basic Workflow\n\n```bash\n# Start a new project\nmkdir my-project && cd my-project\nrvs init\n\n# Add some files\necho \"Hello World\" > hello.txt\nrvs add hello.txt\nrvs commit -m \"Add hello.txt\"\n\n# Create and switch to a new branch\nrvs branch feature\nrvs checkout feature\n\n# Make changes and commit\necho \"Feature code\" > feature.txt\nrvs add feature.txt\nrvs commit -m \"Add feature\"\n\n# Switch back and merge\nrvs checkout main\nrvs merge feature\n```\n\n### Advanced Operations\n\n```bash\n# Stash uncommitted changes\nrvs stash\n\n# Work with multiple worktrees\nrvs worktree add ../hotfix hotfix-branch\nrvs worktree list\nrvs worktree remove ../hotfix\n\n# Detached HEAD operations\nrvs checkout --detach HEAD~2\nrvs checkout -b new-feature # Create branch from detached HEAD\n\n# Reset operations\nrvs reset --soft HEAD~1 # Reset HEAD only\nrvs reset --mixed HEAD~1 # Reset HEAD and index (default)\nrvs reset --hard HEAD~1 # Reset HEAD, index, and working tree\n\n# Interactive rebase (reapply commits)\nrvs rebase main\n\n# Show commit details\nrvs show HEAD --name-status # Show files changed in commit\nrvs show HEAD --stat # Show diffstat\n\n# Restore specific files from a commit\nrvs restore --source=HEAD~1 file.txt\n```\n\n### Repository Management\n\n```bash\n# Check what's staged and unstaged\nrvs status\n\n# View detailed commit history\nrvs log --oneline\n\n# List all files tracked by RVS\nrvs ls-files\n\n# Examine tree structure\nrvs ls-tree HEAD\n```\n\n## \ud83c\udfe2 Worktree Management\n\nRVS provides comprehensive Git-compatible worktree functionality, allowing you to work on multiple branches simultaneously:\n\n### Creating and Managing Worktrees\n\n```bash\n# Create a new worktree for a feature branch\nrvs worktree add ../feature-branch feature\n\n# Create a worktree in detached HEAD state\nrvs worktree add ../hotfix HEAD~2\n\n# List all worktrees\nrvs worktree list\n# Output:\n# /path/to/main/repo abc1234 [main]\n# /path/to/feature def5678 [feature]\n# /path/to/hotfix ghi9012 (detached HEAD)\n\n# Remove a worktree\nrvs worktree remove ../feature-branch\n\n# Lock/unlock worktrees\nrvs worktree lock ../feature-branch\nrvs worktree unlock ../feature-branch\n```\n\n### Worktree Benefits\n\n- **Parallel Development**: Work on multiple features simultaneously\n- **Git Compatibility**: Uses the same `.rvs` file structure as Git worktrees\n- **Independent State**: Each worktree has its own HEAD, index, and working directory\n- **Shared History**: All worktrees share the same commit history and branches\n- **Detached HEAD Support**: Create worktrees in detached HEAD state for experimental work\n\n### Detached HEAD Workflows\n\nRVS fully supports detached HEAD operations for experimental development:\n\n```bash\n# Enter detached HEAD state\nrvs checkout --detach HEAD~3\n\n# Make experimental changes\necho \"experimental feature\" > experiment.txt\nrvs add experiment.txt\nrvs commit -m \"Experimental feature\"\n\n# Create a branch from detached HEAD\nrvs checkout -b experiment-branch\n\n# Or return to a branch, leaving experimental commits\nrvs checkout main\n```\n\n## \ud83c\udfe7 Architecture\n\nRVS is built with a robust, modular architecture designed for reliability and portability:\n\n```\nrvs/\n\u251c\u2500\u2500 core/ # Core functionality\n\u2502 \u251c\u2500\u2500 repository.py # Repository management\n\u2502 \u251c\u2500\u2500 objects.py # Git object handling\n\u2502 \u251c\u2500\u2500 index.py # Staging area\n\u2502 \u251c\u2500\u2500 refs.py # Branch/tag references\n\u2502 \u2514\u2500\u2500 hooks.py # Hook system\n\u251c\u2500\u2500 commands/ # Command implementations\n\u2502 \u251c\u2500\u2500 add.py # Add command\n\u2502 \u251c\u2500\u2500 commit.py # Commit command\n\u2502 \u251c\u2500\u2500 branch.py # Branch operations\n\u2502 \u2514\u2500\u2500 ... # Other commands\n\u251c\u2500\u2500 cli.py # Command-line interface\n\u2514\u2500\u2500 exceptions.py # Custom exceptions\n```\n\n## \ud83d\udd27 Command Line Options\n\n```bash\nusage: rvs [-h] [--repo REPO] [--version] {command} ...\n\nRVS - Robust Versioning System\n\npositional arguments:\n {init,add,commit,status,log,show,diff-tree,reset,branch,checkout,merge,rebase,restore,rm,ls-files,ls-tree,worktree,stash}\n Available commands\n\noptions:\n -h, --help Show help message and exit\n --repo REPO Repository path (default: current directory)\n --version Show program's version number and exit\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork the repository**\n2. **Create a feature branch** (`git checkout -b feature/amazing-feature`)\n3. **Make your changes** and add tests\n4. **Commit your changes** (`git commit -m 'Add amazing feature'`)\n5. **Push to the branch** (`git push origin feature/amazing-feature`)\n6. **Open a Pull Request**\n\n### Development Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/rvs-rvs/rvs.git\ncd rvs\n\n# Install in development mode\npip install -e .\n\n# Run tests (if available)\npython -m pytest\n\n# Run RVS directly\npython -m rvs --help\n```\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgments\n\n- Inspired by Git's elegant design and powerful functionality\n- Built with Python's excellent standard library\n- Thanks to the open-source community for inspiration and feedback\n\n## \ud83d\udcde Contact\n\n- **Project**: [rvs-rvs/rvs](https://github.com/rvs-rvs/rvs)\n- **Issues**: [GitHub Issues](https://github.com/rvs-rvs/rvs/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/rvs-rvs/rvs/discussions)\n\n---\n\n<div align=\"center\">\n\n**\u2b50 Star this repository if you find it useful! \u2b50**\n\nMade with \u2764\ufe0f for robust, portable version control\n\n</div>\n",
"bugtrack_url": null,
"license": null,
"summary": "Robust Versioning System - Git-style version control built for universal compatibility",
"version": "2.1.1",
"project_urls": {
"Bug Reports": "https://github.com/rvs-rvs/rvs/issues",
"Documentation": "https://github.com/rvs-rvs/rvs#readme",
"Homepage": "https://github.com/rvs-rvs/rvs",
"Source": "https://github.com/rvs-rvs/rvs"
},
"split_keywords": [
"python",
"git",
"version-control",
"python-3",
"pypi",
"rvs",
"vcs",
"cli",
"robust",
"portable"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f8e771ed761a110a9296b89fd215ab879112f4aeacebb3ba3e22d5958806b3d0",
"md5": "c8c3eb55107562c8466c103a92086ce6",
"sha256": "2dc1fcf88852e51d1b88ac5eeec9c4ad80b3d5f581024981712bdd2b34ac3716"
},
"downloads": -1,
"filename": "rvs-2.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c8c3eb55107562c8466c103a92086ce6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 71753,
"upload_time": "2025-08-22T07:22:55",
"upload_time_iso_8601": "2025-08-22T07:22:55.943202Z",
"url": "https://files.pythonhosted.org/packages/f8/e7/71ed761a110a9296b89fd215ab879112f4aeacebb3ba3e22d5958806b3d0/rvs-2.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4b174d10feae6f3b3a6835ea61b10b2c9cb56d0c4e2112eb728f274dfe07749e",
"md5": "c8d19b02d1503dddc2dd1ba4a259cd77",
"sha256": "227c5b68dddca4f4c44b45c1b90a9e7385705b543c60367dc3c3743219b139f6"
},
"downloads": -1,
"filename": "rvs-2.1.1.tar.gz",
"has_sig": false,
"md5_digest": "c8d19b02d1503dddc2dd1ba4a259cd77",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 56524,
"upload_time": "2025-08-22T07:22:57",
"upload_time_iso_8601": "2025-08-22T07:22:57.399714Z",
"url": "https://files.pythonhosted.org/packages/4b/17/4d10feae6f3b3a6835ea61b10b2c9cb56d0c4e2112eb728f274dfe07749e/rvs-2.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-22 07:22:57",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "rvs-rvs",
"github_project": "rvs",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "rvs"
}