Hi, Jonathan Nieder wrote: > I quite like the idea of this patch series. When I try to test it with > "git merge jc/ita; make test", t0020-crlf setup fails [...] > This could be me doing something [stupid] and it was. In a sleepy daze, I resolved a conflict <<<<<<< #define ADD_CACHE_IGNORE_REMOVAL 8 ======= #define ADD_CACHE_INTENT 8 >>>>>>> by using the same bit for both. Sorry for the noise. Others can experience that unpleasant error message for themselves with next + jc/add-ita merged properly: $ mkdir test-repo && cd test-repo $ git init Initialized empty Git repository in /var/tmp/jrnieder/test-repo/.git/ $ : >a $ git add -N a $ git commit error: invalid object e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 error: Error building trees I think the first error comes from update_one, which creates a tree object from the index. It is complaining, because after all, that object is not in any sha1 file. If the empty blob happened to be in our object database, the user's mistake would be hidden: $ git add a && git commit error: invalid object e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 error: Error building trees $ git rm -f --cached a rm 'a' $ git add a $ git commit -m initial $ echo hi >b $ git add -N b $ git commit && echo ok Created commit 91325db: some commit message 0 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 b ok Maybe it would be better to use some other magic blob (or a bit somewhere) to remember that the file has not been added yet. Thoughts? Regards, Jonathan -- 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