Zbigniew Jędrzejewski-Szmek [off-list ref] writes:
# Merge import 1.0 and remove the empty file
git merge --no-edit import^
git rm empty.txt
git commit -m 'Remove empty file'
# Merge import 1.1 and watch empty.txt contents show up in .gitignore
git merge --no-edit import
cat .gitignore
Given what merge-recursive does, I am not very surprised, even though I
agree that it feels like a very surprising end user experience ;-)