|
1 | | -<div align="center"> |
2 | | - <!--Logo--> |
3 | | - <img width="200" src="https://github.com/sgkens/resources/raw/main/modules/CommitFusion/logo-v1-black.svg"/> |
4 | | -</div> |
| 1 | +# <img width="25" src="https://raw.githubusercontent.com/sgkens/resources/main/modules/CommitFusion/dist/v2/commitfusion-icon-x128.png"/> **CommitFusion** |
5 | 2 |
|
6 | | -<div align="center"> |
7 | | - <!--Name+Version--> |
8 | | - <!-- <a href="https://github.com/sgkens"> |
9 | | - <img src="https://img.shields.io/badge//-sgkens-orange?&stype=flat&logo=Personio&logoColor=blue"> |
10 | | - </a> --> |
11 | | - <!--License--> |
12 | | - <a href="https://github.com/sgkens/commitfusion/"> |
13 | | - <img src="https://img.shields.io/badge/MIT-License-blue?style=&logo=unlicense&color=%23004481"> |
14 | | - </a> |
15 | | - <!--Code Coverage--> |
16 | | - <a href="https://gitlab.lab.davilion.online/powershell/ccommits/-/commits/main"> |
17 | | - <img src="https://gitlab.snowlab.tk/powershell/ccommits/badgesmain/coverage.svg"> |
18 | | - </a> |
19 | | - <!--Release--> |
20 | | - <a href="https://gitlab.lab.davilion.online/powershell/ccommits/-/releases"> |
21 | | - <img src="https://gitlab.lab.davilion.online/powershell/ccommits/-/badges/release.svg"> |
22 | | - </a> |
23 | | - |
24 | | -</div> |
| 3 | +<!--license--> |
| 4 | +<a href="https://github.com/sgkens/commitfusion/"> |
| 5 | + <img src="https://img.shields.io/badge/MIT-License-blue?style=&logo=unlicense&color=%23004481"> |
| 6 | +</a> |
| 7 | +<!--coverage--> |
| 8 | +<a href="https://gitlab.lab.davilion.online/powershell/ccommits/-/commits/main"> |
| 9 | + <img src="https://gitlab.snowlab.tk/powershell/ccommits/badgesmain/coverage.svg"> |
| 10 | +</a> |
| 11 | +<!--Choco--> |
| 12 | +<a href="https://chocolatory.org/sgkens/commitfusion"> |
| 13 | + <img src="https://img.shields.io/chocolatey/dt/commitfusion?label=Choco"> |
| 14 | +</a> |
| 15 | +<!--[psgallary]--> |
| 16 | +<a href="https://psgallary.com"> |
| 17 | + <img src="https://img.shields.io/powershellgallery/dt/commitfusion?label=psgallary"> |
| 18 | +</a> |
25 | 19 |
|
26 | | -<div style="font-weight:bold;" align="center" > |
27 | | - <!--Module Build --> |
28 | | - <img width="13" src="https://gitlab.lab.davilion.online/sgkens/resources/-/raw/main/modules/logtastic/dist/Generic-powershell-24x23.png"> |
29 | | - PowerShell Module |
| 20 | +***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](https://www.onventionalcommits.org/en/v1.0.0/) standard, and uses [π§·gitmojis Schema](https://github.com/carloscuesta/gitmoji/blob/master/packages/gitmojis/src/gitmojis.json) see [π§·gitmoji.dev](https://gitmoji.dev), The module allows the construction of a custimized commit message with a number of options. |
30 | 21 |
|
31 | | - <!--Pipline--> |
32 | | - <a href="https://gitlab.lab.davilion.online/powershell/logtastic"> |
33 | | - <img src="https://img.shields.io/gitlab/pipeline-status/powershell%2Flogtastic?gitlab_url=https%3A%2F%2Fgitlab.snowlab.tk&branch=main&logo=gitlab&label=build"> |
34 | | - </a> |
| 22 | +## π Documentaiton |
35 | 23 |
|
36 | | - <img src="https://raw.githubusercontent.com/sgkens/resources/main/modules/llline_v2-800x53.svg"> |
37 | | -</div> |
| 24 | +[π https://pages.github.com/sgkens/commitfusion]() |
38 | 25 |
|
39 | | -<div align="center"><h1><b>Commit Fusion</b></h1><em>Conventional Commit Message Generator</em></div> |
| 26 | +<!--Pipline--> |
| 27 | +<a href="https://gitlab.lab.davilion.online/powershell/logtastic"> |
| 28 | + <img src="https://img.shields.io/gitlab/pipeline-status/powershell%2Flogtastic?gitlab_url=https%3A%2F%2Fgitlab.snowlab.tk&branch=main&logo=gitlab&label=build"> |
| 29 | +</a> |
| 30 | +<!--Release--> |
| 31 | +<a href="https://gitlab.lab.davilion.online/powershell/ccommits/-/releases"> |
| 32 | + <img src="https://gitlab.lab.davilion.online/powershell/commitfusion/-/badges/release.svg"> |
| 33 | +</a> |
40 | 34 |
|
41 | | ---- |
| 35 | +## π Module Features |
42 | 36 |
|
43 | | -*CommitFusion* is a PowerShell module crafted to streamline the creation of well-organized and uniform commit messages in adherence to the [π§·Conventional Commits specification](https://www.onventionalcommits.org/en/v1.0.0/) for your `git` repository. |
| 37 | +#### πͺΆ Conventional Commits Standard |
| 38 | +Streamlined commit messages for better collaboration. |
44 | 39 |
|
45 | | -A custom version of the [π§·carloscuesta gitmojis Schema](https://github.com/carloscuesta/gitmoji/blob/master/packages/gitmojis/src/gitmojis.json) (accessible at [π§·gitmoji.dev](https://gitmoji.dev)) is used to define the emojis, scope, and default description of the commit string. |
| 40 | +#### πͺΆ Customizable Commit Message |
| 41 | +Tailor your messages to fit your project's unique needs |
46 | 42 |
|
| 43 | +#### πͺΆ Semver Versioning Generator |
| 44 | +Automate versioning with semantic versioning for clear releases. |
47 | 45 |
|
| 46 | +#### πͺΆ Changelog Auto-update with Markdown Auto-format |
| 47 | +Maintain an organized and formatted changelog |
48 | 48 |
|
| 49 | +#### πͺΆ Gitmoji Custom Schema |
| 50 | +Add a touch of personality with custom Gitmoji schemes. |
49 | 51 |
|
50 | | -### Full documention <img width="12px" src="https://raw.githubusercontent.com/sgkens/resources/main/modules/readme-1.png"> [Here]() |
| 52 | +## πΎ Using Commitfusion |
51 | 53 |
|
52 | | -### Installation Guide <img width="12px" src="https://raw.githubusercontent.com/sgkens/resources/main/modules/readme-1.png"> [Here]() |
| 54 | +Retrive list of available commit types |
53 | 55 |
|
54 | | -## Basic Examples |
55 | | -Generate a `docs` type commit message |
56 | 56 | ```powershell |
57 | | -# Custom docs type commit message with custom description |
58 | | -New-ConventionalCommit -Type docs |
| 57 | +Get-CommitTypes |
59 | 58 | ``` |
60 | 59 |
|
61 | | -*Ouput* |
62 | | -```text |
63 | | -π docs(update):Documentation |
64 | | -``` |
65 | | -Check witch types have a semver value or `minor` |
66 | | -```powershell |
67 | | -Get-CiSetFusion -semver minor |
68 | | -``` |
69 | | -*Ouput* |
70 | | - |
71 | | -``` |
72 | | -type emoji entity code description name semver cfa |
73 | | --------------------------------------------------------------------------- |
74 | | -feat β¨ ✨ :sparkles: Introduce new features. sparkles minor {@{action=}} |
75 | | -``` |
| 60 | +Retrive list of available commit types. |
76 | 61 |
|
77 | | -Create a new `feature` commit with some notes, and a feature addition. |
78 | 62 | ```powershell |
79 | | -New-ConventionalCommit -Type feat -Body "Updated module logic", "updated readme" -FeatureAddtions "Provided New Module Functionally via new CMDLET" |
| 63 | +Get-CommitTypes -Semver patch |
| 64 | +Get-CommitTypes -Semver minor |
| 65 | +Get-CommitTypes -Semver major |
| 66 | +Get-CommitTypes -Semver nosemver |
80 | 67 | ``` |
81 | | -*Output* |
82 | | -```text |
83 | | -β¨ feat:Introduce new features. |
84 | | -
|
85 | | -π§° Build: minor |
86 | | -
|
87 | | -π NOTES: |
88 | 68 |
|
89 | | -β Updated module logic \ |
90 | | -β updated readme ..π |
91 | | -
|
92 | | -π FEATURE ADDTIONS: |
93 | | -
|
94 | | -π Provided New Module Functionally via new CMDLET ..π |
95 | | -``` |
96 | | -Assuming you have staged files, you can use the following to commit the changes: |
| 69 | +Creating a new `feature` commit. |
97 | 70 |
|
98 | 71 | ```powershell |
99 | | -New-ConventionalCommit -Type docs -Scope "update" -Description "Documentation" | Set-Commit |
| 72 | +# Default Returns ]string] |
| 73 | +New-Commit -Type feat -Body "Updated module logic", "updated readme" -FeatureAddtions "Provided new module gunctionally via new cmdlet" |
100 | 74 | ``` |
101 | 75 |
|
102 | | -Message can be piped into `Format-FusionMD` to generate a markdown version of the commit message |
| 76 | +Assuming you have staged files, you can use the following to commit the changes: |
103 | 77 |
|
104 | 78 | ```powershell |
105 | | -New-ConventionalCommit -Type docs -Scope "update" -Description "Documentation" | Format-FusionMD |
| 79 | +# Apply Commit |
| 80 | +New-Commit @params | Set-Commit -Confirm |
| 81 | +# Apply Commit and write to changelog file |
| 82 | +New-Commit @params | Format-FusionMD | Update-Changelog -logfile path\to\file | Set-Commit -Confirm |
106 | 83 | ``` |
107 | 84 |
|
108 | | -### What types can you use |
109 | | -Retrieve the available list of `types` from `$moduleroot/libs/commitfusion.types.json` switchs `-NoSemVer`, `-Major`,`-Minor`,`-Patch`, providing no switch will return all types, as a `[PSObject]` unformatted, see documentation above for more information. |
| 85 | +Generate Semver version base on you commits |
110 | 86 |
|
111 | 87 | ```powershell |
112 | | -# Types from `$moduleroot/libs/commitfusion.types.json` with no smver |
113 | | -Get-CiSetFusion -NoSemver |
| 88 | +# generate SemVer Version returns psobject |
| 89 | +Get-GitAutoVersion | select version |
| 90 | +# only string |
| 91 | +(Get-GitAutoVersion).Version |
| 92 | +# in string |
| 93 | +$version = "v_$((Get-GitAutoVersion).Version)" |
114 | 94 | ``` |
115 | 95 |
|
116 | | -*Output* |
117 | | -```powershell |
118 | | -type emoji entity code description name semver cfa |
119 | | ----- ----- ------ ---- ----------- ---- ------ --- |
120 | | -docs π 📝 :memo: Write docs. memo {@{action=}} |
121 | | -test β
✅ :white_check_mark: Add tests. white_check_mark {@{action=}} |
122 | | -ci π· 👷 :construction_worker: Continuous integration. construction_worker {@{action=}} |
123 | | -chore π§ 🔧 :wrench: Tooling, Generic commit wrench {@{action=}} |
124 | | -bookmark π 🔖 :bookmark: Release / Version tags. bookmark {@{action=}} |
125 | | -wip π§ 🚧 :construction: Work in progress. construction {@{action=}} |
126 | | -gitignore π bdfe7; :see_no_evil: Add or update a .gitignore file. see-no-evil {@{action=}} |
127 | | -flag π© 🚩 :triangular_flag_on_post: Add, update, or remove feature flags. triangular-flag-on-post {@{action=}} |
128 | | -deploy π 🚀 :rocket: Deploy stuff. rocket {@{action=}} |
129 | | -project π 🎉 :tada: Begin a project. tada {@{action=}} |
130 | | -refactor β»οΈ ♻ :recycle: Refactor code. recycle {@{action=}} |
131 | | -resources π F69A; :truck: Move or rename resources (e.g.: files, paths, routes). truck {@{action=}} |
132 | | -deadcode β°οΈ ⚰ :coffin: Remove dead code. coffin {@{action=}} |
133 | | -Depre ποΈ 🗑 :wastebasket: Remove deprecate code. wastebasket {@{action=}}} |
134 | | -``` |
| 96 | +### Default avaliable commit types |
135 | 97 |
|
| 98 | +> Types are found at`$moduleroot/libs/commitfusion.types.json |
136 | 99 |
|
137 | | -# π Changelog |
| 100 | +# π Changelog |
0 commit comments