Initial upload: GitPulse - Developer Productivity Analyzer CLI tool
This commit is contained in:
85
CONTRIBUTING.md
Normal file
85
CONTRIBUTING.md
Normal file
@@ -0,0 +1,85 @@
|
||||
# Contributing to GitPulse
|
||||
|
||||
Thank you for your interest in contributing to GitPulse! This document provides guidelines and instructions for contributing.
|
||||
|
||||
## Getting Started
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Rust 1.70 or later
|
||||
- Cargo 1.70 or later
|
||||
- Git
|
||||
|
||||
### Development Setup
|
||||
|
||||
1. Fork the repository on GitHub
|
||||
2. Clone your fork locally:
|
||||
```bash
|
||||
git clone https://github.com/YOUR_USERNAME/gitpulse.git
|
||||
cd gitpulse
|
||||
```
|
||||
|
||||
3. Set up the development environment:
|
||||
```bash
|
||||
cargo build
|
||||
cargo test
|
||||
```
|
||||
|
||||
4. Create a branch for your changes:
|
||||
```bash
|
||||
git checkout -b feature/your-feature-name
|
||||
```
|
||||
|
||||
## Coding Standards
|
||||
|
||||
### Code Style
|
||||
|
||||
- Follow Rust standard formatting with `cargo fmt`
|
||||
- Run `cargo clippy` to check for common issues
|
||||
- Ensure all warnings are resolved
|
||||
|
||||
### Documentation
|
||||
|
||||
- Add docstrings to all public functions and types
|
||||
- Update README.md for user-facing changes
|
||||
- Add inline comments for complex logic
|
||||
|
||||
### Testing
|
||||
|
||||
- Write unit tests for new functionality
|
||||
- Ensure all tests pass before submitting
|
||||
- Aim for meaningful test coverage
|
||||
|
||||
## Submitting Changes
|
||||
|
||||
1. Commit your changes with a clear commit message:
|
||||
```bash
|
||||
git commit -m "Add feature: brief description"
|
||||
```
|
||||
|
||||
2. Push to your fork:
|
||||
```bash
|
||||
git push origin feature/your-feature-name
|
||||
```
|
||||
|
||||
3. Create a Pull Request against the main branch
|
||||
|
||||
4. Address any feedback from reviewers
|
||||
|
||||
## Reporting Issues
|
||||
|
||||
When reporting issues, please include:
|
||||
|
||||
- A clear description of the problem
|
||||
- Steps to reproduce the issue
|
||||
- Expected behavior vs actual behavior
|
||||
- System information (OS, Rust version, etc.)
|
||||
- Any relevant error messages
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
This project follows the [Contributor Covenant Code of Conduct](https://www.contributor-covenant.org/). By participating, you are expected to uphold this code.
|
||||
|
||||
## Questions?
|
||||
|
||||
If you have questions, feel free to open an issue for discussion.
|
||||
Reference in New Issue
Block a user