CommitFusion is a PowerShell module designed to streamline the process of generating Conventional Commits Messages in git
. Commit messages are constructed using the ๐งทConventional Commits specification standard, and uses ๐งทgitmojis Schema see ๐งทgitmoji.dev, The module allows the construction of a custimized commit message with a number of options.
๐ชถ Conventional Commits Standard - Streamlined commit messages for better collaboration. \
๐ชถ Customizable Commit Message - Tailor your messages to fit your project's unique needs. \
๐ชถ Semver Versioning Generator - Automate versioning with semantic versioning for clear releases. \
๐ชถ Changelog Auto-update with Markdown Auto-format - Maintain an organized and formatted changelog.\
๐ชถ Gitmoji Custom Schema - Add a touch of personality with custom Gitmoji schemes.
Retrive list of available commit types
Get-CommitTypes
Retrive list of available commit types.
Get-CommitTypes -Semver patch
Get-CommitTypes -Semver minor
Get-CommitTypes -Semver major
Get-CommitTypes -Semver nosemver
Creating a new feature
commit.
# Default Returns ]string]
New-Commit -Type feat -Body "Updated module logic", "updated readme" -FeatureAddtions "Provided new module gunctionally via new cmdlet"
Assuming you have staged files, you can use the following to commit the changes:
# Apply Commit
New-Commit @params | Set-Commit -Confirm
# Apply Commit and write to changelog file
New-Commit @params | Format-FusionMD | Update-Changelog -logfile path\to\file | Set-Commit -Confirm
Generate Semver version base on you commits
# generate SemVer Version returns psobject
Get-GitAutoVersion | select version
# only string
(Get-GitAutoVersion).Version
# in string
$version = "v_$((Get-GitAutoVersion).Version)"
Types are found at`$moduleroot/libs/commitfusion.types.json