Repository navigation
Initial release
Pre-release
Pre-release
PyVCS: Python Version Control System
PyVCS is a lightweight version control system implemented in Python. The aim with this project is to understand of how version control systems work under the hood and have fun implementing it in Python.
Features
- Initialize a new repository
- Add files to version control
- Commit changes with messages
- View differences between current files and last commit
Installation
Clone the repository:
git clone https://github.com/OmKharade/pyvcs.git
cd pyvcsInstall the package:
pip install -e .Usage
# Transform the current directory into a PyVCS repository:
pyvcs init
# Create an empty repository in a new subdirectory called <directory>
pyvcs init <directory>
# Add a file to version control:
pyvcs add filename.txt
# Commit changes:
pyvcs commit "Commit Message"
# View differences:
pyvcs diff filename.txtProject Structure
pyvcs/
├── pyvcs/
│ ├── __init__.py
│ └── core.py
├── cli.py
├── setup.py
└── README.md
Future Versions
- Improve diff algorithm (line-by-line changes)
- Branching and Merging
- Remote Repositories