submodule: teach rm to remove submodules unless they contain a git directory
[gitweb.git] / git-mergetool--lib.sh
index 8fc65d0400545e30fd56f890e6b17052f54f857c..54cb708254d38062983373c536589add648ae304 100644 (file)
@@ -21,7 +21,7 @@ check_unchanged () {
                do
                        echo "$MERGED seems unchanged."
                        printf "Was the merge successful? [y/n] "
-                       read answer
+                       read answer || return 1
                        case "$answer" in
                        y*|Y*) status=0; break ;;
                        n*|N*) status=1; break ;;
@@ -111,7 +111,7 @@ run_merge_tool () {
        return $status
 }
 
-guess_merge_tool () {
+list_merge_tool_candidates () {
        if merge_mode
        then
                tools="tortoisemerge"
@@ -126,7 +126,7 @@ guess_merge_tool () {
                else
                        tools="opendiff kdiff3 tkdiff xxdiff meld $tools"
                fi
-               tools="$tools gvimdiff diffuse ecmerge p4merge araxis bc3"
+               tools="$tools gvimdiff diffuse ecmerge p4merge araxis bc3 codecompare"
        fi
        case "${VISUAL:-$EDITOR}" in
        *vim*)
@@ -136,6 +136,10 @@ guess_merge_tool () {
                tools="$tools emerge vimdiff"
                ;;
        esac
+}
+
+guess_merge_tool () {
+       list_merge_tool_candidates
        echo >&2 "merge tool candidates: $tools"
 
        # Loop over each candidate and stop when a valid merge tool is found.