Skip to content

Instantly share code, notes, and snippets.

@cdunham cdunham/git-snap
Created May 24, 2020

Embed
What would you like to do?
#!/bin/sh
set -e
# git snap: (re-)commit a snapshot of exactly another commit
# an alternative to 'pick' in git rebase -i: use x git snap <sha>
if [ -z "$1" ]; then
echo "usage: git snap <commit sha1>"
exit
fi
case `git cat-file -t $1` in
commit) ;;
*)
echo "$1 is not a git commit"
exit
;;
esac
SHA=$1
git read-tree $SHA^{tree}
git commit -C $SHA | head -n1
git reset --hard --quiet
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.