Thanks for taking the time to contribute! ❤️
- Fork the repo
- Create a branch:
git checkout -b feature/my-feature - Make your changes
- Run tests:
bats test/macsync.bats - Commit:
git commit -m 'Add my feature' - Push and open a Pull Request
Prerequisites:
zshbats-core(brew install bats-core)rsync
Running Tests:
bats test/macsync.batsSandbox Testing:
For safe manual testing without affecting your real files:
./test/sandbox.zsh start # Enter sandbox
./test/sandbox.zsh reset # Reset to fresh state
./test/sandbox.zsh clean # Remove sandbox- Check existing issues
- Open a new issue with:
- MacSync version (
macsync --version) - macOS version
- Steps to reproduce
- Expected vs actual behavior
- MacSync version (
Open an issue describing:
- What you want to achieve
- Why it would be useful
- Possible implementation (optional)
- Follow Google's Shell Style Guide
- Use Zsh features where appropriate
- Run
shellcheckbefore submitting
- Use present tense: "Add feature" not "Added feature"
- Use imperative mood: "Fix bug" not "Fixes bug"
- Keep first line under 72 characters
Please read our Code of Conduct before contributing.