Thanks for your interest in contributing to backup-rsync!
- Fork the repo and clone it
- Install Go (see
go.modfor minimum version) andrsync - Run
make buildto verify the setup
make format # Format code
make lint # Run linter
make test # Run unit tests
make test-integration # Run integration tests (requires rsync)
make check-coverage # Verify coverage threshold (98%)- Create a branch from
main - Make your changes — keep commits focused
- Ensure
make lintandmake testpass - Open a pull request against
main
- Follow idiomatic Go conventions
- Add tests for new functionality
- Use dependency injection over global state
- Keep the CI green — all checks must pass before merge
By contributing, you agree that your contributions will be licensed under the GPL-3.0 License.