Re: [PATCH 05/48] t6039: Add tests for content issues with modify/rename/directory conflicts
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 18, 2011, 23:37 UTC
- Message-ID
- <7vvcuzdusv.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1307518278-23814-6-git-send-email-newren@gmail.com>
Elijah Newren <newren@gmail.com> writes:
> Signed-off-by: Elijah Newren <newren@gmail.com>
Could you add a description for this? Your description on 06/48 is beautifly done. Here is my attempt.
One branch renames a file and creates a directory where the file used to
be, and the other branch updates the file in place. Merging them should
resolve it cleanly as long as the content level change on the branches do
not overlap and rename is detected, or should leave conflict without
losing information. One branch renames a file and makes a file where the directory the renamed
file used to be in, and the other branch updates the file in
place. Merging them should resolve it cleanly as long as the content level
change on the branches do not overlap and rename is detected, or should
leave conflict without losing information.I think I said this in my earlier review, and this is not limited to 05/48 but also applies to 03/48 and 04/48 as well, but there won't be perfect rename detection, and the rename detection logic could change (improve) over time. Ideally, I think the test should declare either case as a success: (1) detection succeeds and avoids unnecessary conflict, or (2) rename is missed and conflict is reported, but otherwise there is no data loss. If it expects only one but not the other, any time the rename logic is improved, the behaviour could change between (1) and (2) and it will cause a false positive "breakage" of these tests.
Thanks.