Hi, On Wed, 29 Oct 2008, Petr Baudis wrote: > +To remove commits that are empty (do not introduce any change): > + > +------------------------------------------------------------------------------ > +git rev-list HEAD | while read c; do [ -n "$(git diff-tree --root $c)" ] || echo $c; done > revs > + > +git filter-branch --commit-filter ' > + if grep -q "$GIT_COMMIT" '"$(pwd)/"revs'; > + then > + skip_commit "$@"; > + else > + git commit-tree "$@"; > + fi' HEAD You would not need to use the temporary "revs" file by using something (totally untested, of course): git filter-branch --commit-filter ' if git diff-tree --exit-status -q "$GIT_COMMIT"; then git commit-tree "$@"; else skip_commit "$@"; fi' HEAD Of course, you could also mention that you could use git log --cherry-pick -p --pretty=format: ..<branch>@{1} to verify that all skipped commits had empty diffs. That one is also totally untested. Ciao, Dscho -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html