]> git.ipfire.org Git - thirdparty/git.git/commit - rerere.c
rerere: handle leftover rr-cache/$ID directory and postimage files
authorJunio C Hamano <gitster@pobox.com>
Fri, 17 Jul 2015 20:28:31 +0000 (13:28 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 15 Mar 2016 22:29:30 +0000 (15:29 -0700)
commit05dd9f139d6a7e4c7cd22d8d3b57faf5be88a571
tree68ae3bcd44ea9c6160f4826c772f6ac1e3771dd6
parent2c7929b133387f563306c0550b24a4b5f674ecb6
rerere: handle leftover rr-cache/$ID directory and postimage files

If by some accident there is only $GIT_DIR/rr-cache/$ID directory
existed, we wouldn't have recorded a preimage for a conflict that
is newly encountered, which would mean after a manual resolution,
we wouldn't have recorded it by storing the postimage, because the
logic used to be "if there is no rr-cache/$ID directory, then we are
the first so record the preimage".  Instead, record preimage if we
do not have one.

In addition, if there is only $GIT_DIR/rr-cache/$ID/postimage
without corresponding preimage, we would have tried to call into
merge() and punted.

These would have been a situation frustratingly hard to recover
from.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
rerere.c
t/t4200-rerere.sh