Let someone else handle your fixup chores
Git Handyman creates a series of fixup commits for the corrections to your previous commits.
- when your LLM didn't format code properly
- when see annoying little errors whose corrections you don't want to be in their own commit
Git Handyman analyzes a file with unstaged changes and:
- Identifies which lines have been modified
- Uses
git blameto find the original commit for each changed line - Groups changes by their original commit
- Stages only the changes belonging to each commit
- Creates fixup commits that can be applied with
git rebase --autosquash
This is particularly useful when you've made multiple small fixes across different parts of a file that belong to different logical commits.
To install in /usr/local/bin, first ensure you have Go 1.21+ installed, and then (after cloning and entering this repo) run
make installIf you want to put it somewhere else, like ~/bin or ~/.local, you can move it there after building it:
make build
mv -i git-handyman $HOME/bin # or wherever you prefergit handyman <filename># Build
make build
# Run tests
make test
# Format and lint
make check
# Build for all platforms
make build-all
# See all targets
make help