Contributing to pan-scm-cli
¶
We're thrilled that you're interested in contributing to the pan-scm-cli
project! Your contributions are essential for making this project better and more effective. Whether you're fixing a bug, adding a new command, improving the documentation, or just giving suggestions, every contribution is valuable.
Getting Started¶
Before you begin, make sure you have a GitHub account and are familiar with Git and GitHub workflows. If you're new to these tools, you might want to check out some tutorials on GitHub's Help pages.
Setting Up Your Environment¶
-
Fork the Repository: Start by forking the pan-scm-cli repository to your GitHub account.
-
Clone Your Fork: Clone your fork to your local machine.
-
Set Up Poetry Environment: We use Poetry for dependency management. If you don't have it installed, follow the instructions on the Poetry website.
-
Create a Branch: Create a branch for your changes.
Contributing Guidelines¶
Code Style¶
We follow PEP 8 standards for Python code. Please ensure your code adheres to these standards.
Pull Request Process¶
-
Update Your Fork: Before making changes, sync your fork with the upstream repository.
-
Make Your Changes: Create your feature branch and make your changes. Ensure that your code passes all tests and linting checks.
-
Commit Your Changes: Commit your changes with a clear and descriptive commit message.
-
Push to Your Fork: Push your changes to your fork on GitHub.
-
Create a Pull Request: Go to the pan-scm-cli repository and create a new pull request from your feature branch.
-
Address Review Feedback: Respond to any feedback from the review process and make necessary changes.
Testing¶
Please include appropriate tests for your changes. We use pytest
for testing.
Documentation¶
If you're adding or modifying functionality, please update the documentation to reflect these changes. We use MkDocs with the Material theme for our documentation.
You can preview your documentation changes locally by running:
Adding New Commands¶
When adding new CLI commands:
- Follow the existing command structure patterns
- Ensure proper input validation
- Include helpful error messages
- Document the command with examples
- Add tests for the new command
Bug Reports and Feature Requests¶
If you find a bug or have a feature request, please create an issue on the GitHub repository using the provided templates.
Code of Conduct¶
Please note that this project adheres to a Code of Conduct. By participating, you are expected to uphold this code.
Thank you for contributing to pan-scm-cli
! Your efforts help make this tool better for everyone.