To contribute to this repository, please follow these guidelines:
You must configure your local Git environment with a GPG key and use conventional commits.
First, ensure you have GPG installed:
# Mac OS
brew install gnupg
# Linux (Debian/Ubuntu)
sudo apt-get install gnupg
# Windows (via Chocolatey)
choco install gpg4win
If you don't have a GPG key, generate one:
gpg --full-generate-key
Follow the prompts to create your key. Make sure to use your EKG email address.
Add your GPG key to Git:
# List your GPG keys
gpg --list-secret-keys --keyid-format LONG
# Copy the key ID (after sec rsa4096/ or rsa3072/)
git config user.signingkey YOUR_KEY_ID
git config commit.gpgsign true
We use conventional commits for consistent commit messages. Install Cocogitto:
cargo install cocogitto
When committing changes, use Cocogitto:
cog commit <type> "<message>" [scope]
Cocogitto supports the following commit types: feat
, fix
, style
, build
, refactor
, ci
, test
, perf
, chore
, revert
, docs
.
Example:
cog commit feat "add new feature"
cog commit fix "resolve issue with login" auth
For breaking changes, use the -B
flag:
cog commit fix -B "remove deprecated API"
Cocogitto will ensure your commits follow the conventional commit specification:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
Check your Git configuration:
git config --local --list | grep gpg
You should see:
user.signingkey=YOUR_KEY_ID
commit.gpgsign=true
If you want to use different user information for this repository:
git config user.name "Your Name"
git config user.email "your.email@ekgf.org"
Please follow the existing code style and patterns in the repository.
- Create a new branch for your changes
- Make sure all tests pass
- Submit a pull request with a clear description of your changes