BM: Baca dalam Bahasa Melayu
World 6: Team Workflows
Conventional Commits, SemVer, changelogs
You will learn: how commit labels decide the next version and the changelog.
The problem
Release day! Users ask what changed. Is it a big update or a small fix? This log will not tell you.
Watch
Tap each point on the timeline.
Semantic Versioning (SemVer): Version numbers in three parts: MAJOR.MINOR.PATCH. (SemVer) uses three numbers: MAJOR.MINOR.PATCH. Each one tells users how big the change is.
Try it
Conventional Commits: A simple style for messages: feat:, fix:, docs: and more. labels match those numbers. fix: means PATCH. feat: means MINOR. Tap every commit that adds a feature.
Tap every commit that adds a feature.
0 of 2 found
Try it
Which number does each commit bump?
Drag a card into a box. Or tap the card, then tap the box.
Hint
fix: is PATCH. feat: is MINOR. A ! before the colon is MAJOR.Predict
Version 2.4.1 is live. Since then: two fix: commits and one feat:. What comes next?
Pick one answer.
Try it
A changelog: A list of the changes in each version, written for people. lists changes for people. The newest version goes on top. Changes are grouped, like Added and Fixed. Tap every fix.
Tap every fix in this changelog.
0 of 2 found
Check
Put these versions in order, newest at the top.
Newest at the top. Put these in order. Use the arrows, or drag.
- 1.12.0
- 2.9.1
- 3.0.0
- 2.10.0
- 2.9.0
Hint
Compare one number at a time. 10 is bigger than 9.You did it!
You can now turn commit labels into versions and a changelog.
Go deeper (optional)
Tools can read Conventional Commits for you. They pick the next version and draft the changelog. A footer that starts with BREAKING CHANGE: also means MAJOR. Versions below 1.0.0 are for early work: anything may change. A tag like v2.5.0 adds a v, but the version is 2.5.0.
Bahasa Melayu
Hari release (keluaran)! Pengguna tanya apa yang berubah. Kemas kini besar atau pembaikan kecil? Log commit (titik simpan) ini tak beritahu.
Semantic Versioning (SemVer) guna tiga nombor: MAJOR.MINOR.PATCH. Setiap satu beritahu pengguna sebesar mana perubahan itu.
Label Conventional Commits padan dengan nombor itu. fix: maksudnya PATCH. feat: maksudnya MINOR. Ketik setiap commit yang tambah ciri baru.
Nombor mana yang setiap commit naikkan?
Versi 2.4.1 dah live. Sejak itu: dua commit fix: dan satu feat:. Apa versi seterusnya?
Changelog (log perubahan) senaraikan perubahan untuk manusia. Versi terbaru di atas. Perubahan dikumpul, contohnya Added dan Fixed. Ketik setiap pembaikan.
Susun versi ini, yang terbaru di atas.
Kini anda boleh tukar label commit jadi versi dan changelog.
You finished this before. Practice is always welcome!
Official docs: git log · Semantic Versioning · Conventional Commits · Keep a Changelog
You've learned for 25 minutes. A short break helps your brain.
Sprint done! Great focus. Stretch for a minute?