Skip to content

References: Commit hygiene

Pro Git by Scott Chacon and Ben Straub. Chapter 5 (Distributed Git), section 5.2 (Contributing to a Project) covers commit-message conventions. Licensed under Creative Commons Attribution Non Commercial Share Alike 3.0 Unported.

Read the source online at git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project.

Pro Git’s commit-message guidelines were popularized by Tim Pope (“A Note About Git Commit Messages”) and adopted by the git project itself; the 50-72 char rule and the imperative-mood convention predate the post but were canonically distilled there.

Conventional Commits Specification at conventionalcommits.org. The full spec including breaking-change notation, footer conventions, and tooling integration.

Tim Pope’s original “A Note About Git Commit Messages” at tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html. The 18-year-old blog post that established most of the conventions used in this lesson. Worth reading for historical context.

Atlassian Git Tutorials, Advanced Git at atlassian.com/git/tutorials/advanced-overview. Licensed under Creative Commons Attribution 2.5 Australia. The “Saving changes” section covers staging-area patterns in depth.

For automated commit-message linting: commitlint.js.org is the most popular tool that enforces Conventional Commits format via pre-commit hook or CI check. Useful when adopting the convention on a team.

For automated release tooling: semantic-release parses Conventional Commits to fully automate versioning, changelog generation, and release publication. Used by many open-source projects.

For interactive rebase to clean up commits before pushing: Pro Git Chapter 7, section 7.6 (Rewriting History) covers git rebase -i for squashing, reordering, and editing commits. We cover this in L12 (Rebase vs merge); the Pro Git chapter is the authoritative reference.

For signed commits: git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work covers GPG-signed commits and the git commit -S flag. Out of T7 scope; mentioned for completeness.

Lesson 3 does not yet cite specific Git hosting platforms (GitHub, GitLab, Bitbucket) beyond Conventional Commits tooling references. Hosting platforms come in L6 (Pull Requests as code review) and L8 (Remotes: origin / upstream / forks).

This lesson is part of the Clawdemy curriculum, licensed under Creative Commons Attribution NonCommercial Share Alike 4.0 International. Pro Git’s CC BY-NC-SA 3.0 license and Clawdemy’s CC BY-NC-SA 4.0 license are directly aligned (the 4.0 license is an approved compatible adaptation license for 3.0 source material per the 3.0 license’s later-versions provision). Commercial use is licensed separately at /legal/licensing.