What command(s) can I use to find empty commits in a git repository, i.e. the commits that would be removed by git filter-branch --prune-empty
?
You'd want to exclude parentless commits and merge commits, then see which ones have the same tree as their parent.
for sha in $(git rev-list --min-parents=1 --max-parents=1 --all)
do
if [ $(git rev-parse ${sha}^{tree}) == $(git rev-parse ${sha}^1^{tree} ) ]
then
echo "${sha} will be pruned"
fi
done
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With