GitExtensions is a project with a long history, made possible by hundreds of contributors.
We welcome contributions including:
- Ideas for improvements
- Bug reports
- Bug fixes
- New features
To help the project maintainers be as effective as possible, please follow the simple guidelines below.
Search the issue tracker for an existing or closely related issue before creating a new one. Be sure to include closed issues in your search.
If an open issue already exists, read through the discussion. If you can add something helpful, do so. Add a 👍 if you'd like to see it prioritised. Subscribe to the issue for updates.
If a closed issue already exists and the issue was addressed, you may like to try one of the CI builds.
If no issue exists, create one. Complete the template, and add any further information that could be relevant such as steps to reproduce, stack traces, screenshots, git/OS version, etc.
Want to contribute some code? Great! In addition to the regular GitHub Pull Request workflow, you'll want to browse our wiki.
Good places to start contributing include:
- Open bugs
- Open issues marked good first issue
- Open issues marked help wanted
It's a good idea to mention that you're picking something up by commenting on its issue.
If no issue exists, create one before making a PR. This creates the opportunity to discuss the issue before you spend time on its implementation. You will likely be more effective this way, and have a greater chance of satisfaction in the end.
Pull requests will be reviewed by one or more team members. To improve the chance of your pull request being merged, your contribution should be as easy to review as possible. Specifically:
- Be focussed in scope
- Be comprised of clear commits (use interactive rebase to tidy things up if needed)
- Include a clear description of the changes and why they should be made
- Be accompanied by unit tests
- Be consistent with the current code style
When filing a pull request, you should be prepared to answer questions about your changes and to perform additional work on the changes in response to review feedback.