DEV Community

Cover image for ๐Ÿท๏ธ commit_gh: Because Git Tags Shouldn't Be That Hard"
raymonepping
raymonepping

Posted on

๐Ÿท๏ธ commit_gh: Because Git Tags Shouldn't Be That Hard"

โ€œA no-nonsense CLI that automates commits, tags, and version bumps โ€” and finally makes semantic versioning behave like it should.โ€

Automation should automate itself โ€” and versioning shouldn't feel like a tax.


You ever forget to tag a Git commit, or bump the version number manually, or mistype something in the changelog?

Yeah โ€” me too.

Thatโ€™s why I built commit_gh.

It's a Bash-based CLI that:

  • Commits your changes โœ…
  • Tags them semantically โœ…
  • Pushes everything โœ…
  • And verifies it all actually worked โœ…

Because I was done losing minutes to versioning drama.


๐Ÿš€ Quickstart

brew install raymonepping/commit-gh-cli/commit-gh-cli
Enter fullscreen mode Exit fullscreen mode

Then just:

commit_gh --bump patch --verify
Enter fullscreen mode Exit fullscreen mode

This bumps the version, commits changes, creates a Git tag like v1.2.3, and pushes it to origin/main.

โ€”-

๐Ÿ”ง What It Does (in one command)

commit_gh --bump patch --verify
Enter fullscreen mode Exit fullscreen mode
  1. Checks if your working tree is clean ๐Ÿงผ
  2. Pulls + rebases from main ๐Ÿ”„
  3. Commits and pushes any changes ๐Ÿ“ฆ
  4. Bumps the patch version via .version (or creates one if missing) ๐Ÿงฎ
  5. Tags and pushes the new version to Git ๐Ÿท๏ธ
  6. Verifies everything (branch, tag, version file) โœ…

โ€”-

๐Ÿงฐ Why I Built This

Because git commit is easy.
But everything around it โ€” tagging, syncing, bumping โ€” gets annoying fast in real workflows.

I wanted:

  • A single command to do it all
  • Safety checks before publishing
  • Homebrew installability for all my CLIs

โธป

โœ… Benefits

  • Semantic versioning baked in
  • Verification mode: --verify
  • Self-healing .version file
  • GitHub tag sync
  • Designed for CI/CD or local use
  • Easily extendable

โธป

๐Ÿ“ฆ Want to Package Your Own CLI?

I wrote this to automate versioning for my own Homebrew-packaged tools like:

  • folder_tree ๐Ÿ—‚๏ธ
  • repository_audit ๐Ÿ”
  • repository_backup ๐Ÿ›ก๏ธ

Now commit_gh powers all of them โ€” keeping tags, versions, and changelogs in sync.

โธป

๐Ÿค– TL;DR

If youโ€™ve ever run git tag, realized you forgot to bump the version, re-tagged, then force-pushedโ€ฆ this tool is for you.

โธป

Check it out:
๐Ÿ”— GitHub โ€“ commit_gh_cli
๐Ÿบ brew install raymonepping/commit-gh-cli/commit-gh-cli
๐Ÿ“– commit_gh --help

โธป

Built for engineers. By an engineer who got tired of typing the same commands over and over.

Top comments (0)