Thank you for your interest in contributing to Magic Scripts! This document provides guidelines and information for contributors.
-
Fork and Setup
git clone https://github.com/your-username/ms.git cd ms git checkout develop # Start from develop branch
-
Create Feature Branch
git checkout -b feature/amazing-feature
-
Develop Your Changes
- Add scripts to
scripts/directory with proper version info - Update documentation as needed
- Follow existing code patterns and conventions
- Add scripts to
-
Test Your Changes
# Test script functionality ./scripts/your-script.sh --version # Calculate and verify checksum ms pub pack checksum scripts/your-script.sh # Verify registry files ms pub pack verify registry/ # Test with Magic Scripts (if applicable) ms install yourcommand yourcommand --version
-
Update Registry (if adding new commands)
# Add entry to ms.msreg with correct checksum # Use develop branch URL for dev testing
-
Submit Changes
git add . git commit -m 'feat: add amazing feature' git push origin feature/amazing-feature
-
Create Pull Request
- Target:
developbranch - Include clear description of changes
- Reference any related issues
- Target:
- Feature branches:
feature/feature-name(fromdevelop) - Bug fixes:
fix/bug-description(fromdevelopormain) - Hotfixes:
hotfix/critical-fix(frommain) - Release:
release/v0.0.0(fromdevelop)
type(scope): description
feat(installer): add version parameter support
fix(registry): resolve duplicate entry handling
docs(readme): update branch strategy documentation
- All scripts must include
--versionand--helpoptions - Checksum calculations must be accurate
- Registry format must be valid
- No breaking changes without major version bump
- Document any new configuration keys
-
Prepare Release
git checkout develop git checkout -b release/v0.0.2 # Update versions, documentation, changelog -
Merge to Main
git checkout main git merge release/v0.0.2 git tag v0.0.2
-
Create Snapshot
git checkout -b release/v0.0.2 git push origin release/v0.0.2
-
Update Registry
# Update ms.msreg with new version entries # Point to release/v0.0.2 branch for immutable references
Feel free to open an issue or start a discussion if you have questions about contributing!