Browse Source

Allow one-way tree merge to remove old files

For some random reason (probably just because nobody noticed), the one-way
merge strategy didn't mark deleted files as deleted, so if you used

	git-read-tree -m -u <newtree>

it would update the files that got changed in the index, but it would not
delete the files that got deleted.

This should fix it, and I can't imagine that anybody depends on the old
strange "update only existing files" behaviour.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Linus Torvalds 19 years ago committed by Junio C Hamano
parent
commit
76b99b8161
  1. 2
      read-tree.c

2
read-tree.c

@ -684,7 +684,7 @@ static int oneway_merge(struct cache_entry **src) @@ -684,7 +684,7 @@ static int oneway_merge(struct cache_entry **src)
merge_size);

if (!a)
return 0;
return deleted_entry(old, NULL);
if (old && same(old, a)) {
return keep_entry(old);
}

Loading…
Cancel
Save