HomeGamesUpdatesPricingMethodology
Steam News6 January 20265mo ago

v1.5.0: New Year Update

Happy New Year! It has been 203 days since the release of git gud, and I’m incredibly grateful for how many people have played and enjoyed the game.

Full notes

Full git gud update

Read the full published notes in a cleaner layout. The original post stays linked below.

What changed

14 fixes10 additions11 changes1 removal
  • Gameplay
  • Balance
  • Fixes
  • Compatibility
  • Events
addedHappy New Year!
addedIt has been 203 days since the release of git gud , and I’m incredibly grateful for how many people have played and enjoyed the game. Hopefully, everyone has picked up a new Git command or two along the way as well.
addedThis update is a big one, the largest so far . One of the most important additions is the new Content Pack system , which is the plan going forward for continued development. Content packs will introduce new sets of challenges built around themed, real-world–style scenarios. Each pack will be low cost (around a dollar or two) and will go on sale whenever the base game does. It’s important to me to keep git gud accessible while still being able to justify the time required to add meaningful new content and improvements. The first content pack will be releasing shortly alongside an introductory sale.
changedYou may notice that this update includes a lot of changes. While some of that work was driven by the first content pack, I also added 246 new unit and integration tests . This surfaced a number of edge cases and areas that needed improvement, and it should significantly reduce the chance of regressions, particularly cases where previously valid challenge solutions would break after a major update.
changedgit gud now includes support for git-filter-repo . I originally avoided this since it isn’t part of core Git, but I’ve listened to the community feedback encouraging its use over [c]git filter-branch[/c]. Existing challenges will continue to accept either tool as valid solutions, but an upcoming content pack introduces scenarios where company policy explicitly forbids [c]filter-branch[/c].
fixedFinally, macOS support is now included. This has been available in the development branch for about a week with no reported issues so far. If any problems do come up, please report them in the Steam Discussions bug reporting forum so they can be addressed quickly.

Happy New Year!

It has been 203 days since the release of git gud, and I’m incredibly grateful for how many people have played and enjoyed the game. Hopefully, everyone has picked up a new Git command or two along the way as well.

This update is a big one, the largest so far. One of the most important additions is the new Content Pack system, which is the plan going forward for continued development. Content packs will introduce new sets of challenges built around themed, real-world–style scenarios. Each pack will be low cost (around a dollar or two) and will go on sale whenever the base game does. It’s important to me to keep git gud accessible while still being able to justify the time required to add meaningful new content and improvements. The first content pack will be releasing shortly alongside an introductory sale.

You may notice that this update includes a lot of changes. While some of that work was driven by the first content pack, I also added 246 new unit and integration tests. This surfaced a number of edge cases and areas that needed improvement, and it should significantly reduce the chance of regressions, particularly cases where previously valid challenge solutions would break after a major update.

git gud now includes support for git-filter-repo. I originally avoided this since it isn’t part of core Git, but I’ve listened to the community feedback encouraging its use over [c]git filter-branch[/c]. Existing challenges will continue to accept either tool as valid solutions, but an upcoming content pack introduces scenarios where company policy explicitly forbids [c]filter-branch[/c].

I’ve also made another pass at tab completion. This iteration should be a noticeable improvement and closer to real-world behavior across common terminal environments.

Finally, macOS support is now included. This has been available in the development branch for about a week with no reported issues so far. If any problems do come up, please report them in the Steam Discussions bug reporting forum so they can be addressed quickly.

As a small but important note: going forward, each release will be archived as a beta branch. If you run into issues with [c]1.5.0[/c], you’ll be able to revert to [c]1.4.2[/c] while waiting for fixes. This was requested by a university that uses git gud in coursework and needs tighter control over version upgrades.

Thanks again to everyone for the continued support, Sky

Changelog 1.5.0

New Features

  • Content Pack system added

  • Initial implementation of [c]git filter-repo[/c]

  • Added [c]--create-branch[/c] flag to [c]git worktree[/c]

  • Added [c]echo[/c] game command

  • Significant improvements to the Tab Complete functionality

  • Added support for MacOS

Git Simulation Improvements

  • Improved [c]git rebase[/c] emulation for closer real-world behavior

  • Especially around rebase todo ordering

  • Improved [c]git filter-branch[/c] emulation accuracy

  • Improved [c]git bisect[/c] to reduce redundant simulation guidance

  • Removed unsafe substrings in both rebase and bisect simulations

  • Merge emulation is now graph-based:

  • Introduced a new [c]CommitGraph[/c] utility used across the simulation

  • Merge commits are now true multi-parent commits (no-ff merges link both histories)

  • Merge validation now checks commit ancestry and reachability instead of commit message text

Validator Updates

  • Improved validators for Bisect, Rebase, Branch, Commit, File, and Stash

  • Improved file validator for restore related edge cases

  • Revised all [c]git clean[/c] validators

  • Revised [c]CommandNotUsed[/c]:

  • Now fully blocks execution of disallowed commands for a challenge

  • Examples: [c]git add[/c] in Challenge 4, [c]git pull[/c] in Challenge 71

  • Fixed branch validator supporting checkout-based creation but not [c]git switch[/c] (Challenge 81 notably)

  • Fixed filter-branch validator not accepting [c]--index-filter[/c]

  • Fixed clone validator not accepting [c]--mirror[/c]

Bug Fixes

  • Fixed header displaying [c]Completed: {diff}[/c] instead of [c]Difficulty: {diff}[/c]

  • Fixed [c]git checkout[/c] saying switched to branch when already there

  • Fixed edge case where Back from a challenge set prompted a progress reset

  • Fixed [c]git bisect good/bad[/c] marking the next commit instead of the current one

  • Fixed restore revision specifier handling

  • Fixed stash save/push not supporting positional message arguments

  • Fixed `git log` validator [c]--oneline[/c] flag placement

  • Fixed inconsistencies in [c]git log --author[/c] parsing

  • Fixed [c]git rebase [/c] targeting support

  • Fixed [c]git restore --staged[/c] edge cases

Source

Steam News / 6 January 2026

Open original post

Changelog.gg summarizes and formats this update. How we read updates.