Make unpack-tree update removed files before any updated files
authorLinus Torvalds <torvalds@woody.linux-foundation.org>
Sat, 22 Mar 2008 16:48:41 +0000 (09:48 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 9 Apr 2008 08:22:25 +0000 (01:22 -0700)
commit1fa6ead492c81bffdbe336373e5b162d3b5ac6d3
tree3a712ef3bb88ae00f317300f4368cee790149519
parent32260ad5dbc3100ebb5e05432198888bfbe600f8
Make unpack-tree update removed files before any updated files

This is immaterial on sane filesystems, but if you have a broken (aka
case-insensitive) filesystem, and the objective is to remove the file
'abc' and replace it with the file 'Abc', then we must make sure to do
the removal first.

Otherwise, you'd first update the file 'Abc' - which would just
overwrite the file 'abc' due to the broken case-insensitive filesystem -
and then remove file 'abc' - which would now brokenly remove the just
updated file 'Abc' on that broken filesystem.

By doing removals first, this won't happen.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
unpack-trees.c