Squashing commits & a simple GitHub release/notes workflow
By Beej Posted on January 20, 2025
GitHub Desktop offers a really convenient UI for squashing commits
in a nutshell, you might want to squash when you make a lot of little edits to things like README.MD and you want that to all look like one clean save event in the commit history =)
easy steps:
load your repo
make sure you fetch the latest via far right button on upper toolbar
nav into the history tab
the commits you want to combine via shift+left_mouse
right mouse one of the commits and select “squash” - tips here:
right mouse the one with the description you prefer
make sure to clean up the description box before pushing back to origin
lastly, push the mods back up via the far right toolbar button
see this minimal custom github workflow for my simple take on rolling the commit messages into release notes along with a compiled build zipped into an “asset” attached to each release
i’m choosing to make the release a manual launch vs pure CD upon commit so i can take the time to squash before creating the release
having clean commits via squashing plays right into using them direcctly for release notes
there’s lots of stuff out there for leveraging milestones, issues & PRs for more sophisticated release/notes process, this is meant to be for small personal projects