Fri, 25 Oct 2019 14:10:27 -0500
compensate for some muscle memory
#!/bin/sh set -eu case ${1:-} in *help|-h) exec perldoc -T $0;; esac BRANCH="$(git symbolic-ref --short -q HEAD)" BASE=$(git merge-base "@{u}" "$BRANCH") exec git rebase --interactive --autosquash "$@" "$BASE" "$BRANCH" :<<=cut =head1 NAME git histedit =head1 SYNOPSIS $ git histedit =head1 DESCRIPTION C<histedit> lets you edit the current branch using interactive rebase, but without actually I<moving> the fork point of your branch, avoiding the complications of fixing up your history and dealing with merge conflicts at the same time. See also: C<hg histedit> =cut