Add custom git commands to dotfiles repo

Include git-branch-backup, git-fix-author, git-name-stash,
git-name-stash-apply, git-rebase-on, and git-rename-branch in a new
bin/ directory. Update install.sh to symlink them into ~/bin and
document them in the README.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Eric Wagoner
2026-03-09 10:43:09 -04:00
parent 5818d60cc4
commit a20358865a
8 changed files with 97 additions and 0 deletions

View File

@@ -146,6 +146,19 @@ pyenv global 3.13.3
tfenv install latest
```
## Custom git commands
The `bin/` directory contains custom git subcommands that are symlinked into `~/bin` by the install script. Make sure `~/bin` is on your PATH (the dotfiles handle this).
| Command | Description |
|---------|-------------|
| `git branch-backup` | Create a timestamped backup branch of the current branch |
| `git fix-author` | Rewrite commit author/email on historical commits |
| `git name-stash <name>` | Stash changes with a named message |
| `git name-stash-apply <name>` | Apply a stash by name |
| `git rebase-on <branch>` | Back up current branch, then pull and rebase onto the given branch |
| `git rename-branch <old> <new>` | Rename a branch locally and on the remote |
## What's included
| File | Purpose |
@@ -159,5 +172,6 @@ tfenv install latest
| `gitconfig` | Git aliases, colors, push config |
| `gitignore_global` | Global gitignore (.DS_Store, *~) |
| `fzf.zsh` | fzf PATH and shell integration |
| `bin/git-*` | Custom git subcommands (see above) |
| `Brewfile` | All Homebrew packages and casks |
| `install.sh` | Symlink installer script |