# [PATCH v2 1/2] mergetool: honor tempfile configuration when resolving delete conflicts

2 messages from 2016-03-05 to 2016-03-07. Participants: David Aguilar, Junio C Hamano.
Thread: https://gitlist.dev/t/41627

## David Aguilar, 2016-03-05 22:56

Subject: [PATCH v2 1/2] mergetool: honor tempfile configuration when resolving delete conflicts
Message-ID: <1457218586-18654-1-git-send-email-davvid@gmail.com>
URL: https://gitlist.dev/e/1457218586-18654-1-git-send-email-davvid%40gmail.com

```
Teach resolve_deleted_merge() to honor the mergetool.keepBackup and
mergetool.keepTemporaries configuration knobs.

This ensures that the worktree is kept pristine when resolving deletion
conflicts with the variables both set to false.

Signed-off-by: David Aguilar <davvid@gmail.com>
---
v2 uses test.  2/2 is the same as before, and was not sent this round.

 git-mergetool.sh | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/git-mergetool.sh b/git-mergetool.sh
index 9f77e3a..4a9e9ca 100755
--- a/git-mergetool.sh
+++ b/git-mergetool.sh
@@ -126,7 +126,12 @@ resolve_deleted_merge () {
 		case "$ans" in
 		[mMcC]*)
 			git add -- "$MERGED"
-			cleanup_temp_files --save-backup
+			if test "$merge_keep_backup" = "true"
+			then
+				cleanup_temp_files --save-backup
+			else
+				cleanup_temp_files
+			fi
 			return 0
 			;;
 		[dD]*)
@@ -135,6 +140,10 @@ resolve_deleted_merge () {
 			return 0
 			;;
 		[aA]*)
+			if test "$merge_keep_temporaries" = "false"
+			then
+				cleanup_temp_files
+			fi
 			return 1
 			;;
 		esac
-- 
2.8.0.rc1.2.g28ba210

```

## Junio C Hamano, 2016-03-07 02:34

Subject: Re: [PATCH v2 1/2] mergetool: honor tempfile configuration when resolving delete conflicts
Message-ID: <xmqqbn6rrp7b.fsf@gitster.mtv.corp.google.com>
URL: https://gitlist.dev/e/xmqqbn6rrp7b.fsf%40gitster.mtv.corp.google.com
In-Reply-To: <1457218586-18654-1-git-send-email-davvid@gmail.com>

```
David Aguilar <davvid@gmail.com> writes:

> Teach resolve_deleted_merge() to honor the mergetool.keepBackup and
> mergetool.keepTemporaries configuration knobs.
>
> This ensures that the worktree is kept pristine when resolving deletion
> conflicts with the variables both set to false.
>
> Signed-off-by: David Aguilar <davvid@gmail.com>
> ---
> v2 uses test.  2/2 is the same as before, and was not sent this round.

Thanks, will queue.

By the way, the fact that 2/2 did not make you realize that your
"if" statement was broken in the v1 1/2 patch indicates that the
codepath is not covered by the added test, doesn't it?  I was sort
of expecting an updated patch for 2/2 for this reason...

>  git-mergetool.sh | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/git-mergetool.sh b/git-mergetool.sh
> index 9f77e3a..4a9e9ca 100755
> --- a/git-mergetool.sh
> +++ b/git-mergetool.sh
> @@ -126,7 +126,12 @@ resolve_deleted_merge () {
>  		case "$ans" in
>  		[mMcC]*)
>  			git add -- "$MERGED"
> -			cleanup_temp_files --save-backup
> +			if test "$merge_keep_backup" = "true"
> +			then
> +				cleanup_temp_files --save-backup
> +			else
> +				cleanup_temp_files
> +			fi
>  			return 0
>  			;;
>  		[dD]*)
> @@ -135,6 +140,10 @@ resolve_deleted_merge () {
>  			return 0
>  			;;
>  		[aA]*)
> +			if test "$merge_keep_temporaries" = "false"
> +			then
> +				cleanup_temp_files
> +			fi
>  			return 1
>  			;;
>  		esac

```
