On Fri, Nov 30, 2007 at 10:08:41PM -0800, Junio C Hamano wrote: > I think it does make a difference, if you have a cross rename that > swaps: > > $ ls -F foo bar > bar foo@ > $ mv foo tmp; mv bar foo; mv tmp bar > $ ls -F foo bar > bar@ foo OK, I see now what you were saying before. Yes, we do want them actually broken, and my initial patch is not right in that sense. > > - if (!S_ISREG(src->mode) || !S_ISREG(dst->mode)) > > - return 0; /* leave symlink rename alone */ > > + if (object_type(src->mode) != object_type(dst->mode)) > > + return 1; /* even their types are different */ > > Oops, this part is wrong. It should be checking ISREG and stuff. OK, good. I was sitting there puzzling over what in the world this change meant. -Peff - 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