git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] mergetool: Clean up description of files and prompts for merge resolutions

From
Theodore Ts'o <tytso@mit.edu>
Date
Mar 29, 2007, 15:44 UTC
Message-ID
<11751830652230-git-send-email-tytso@mit.edu>
In-Reply-To
<11751830652512-git-send-email-tytso@mit.edu>

This fixes complaints from Junio for how messages and prompts are printed when resolving symlink and deleted file merges.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
---
 git-mergetool.sh |   29 +++++++++++++++--------------
 1 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/git-mergetool.sh b/git-mergetool.sh
index b9d81f5..9b824ac 100755
--- a/git-mergetool.sh
+++ b/git-mergetool.sh
@@ -44,27 +44,24 @@ describe_file () {
     branch="$2"
     file="$3"
 
-    printf "    "
+    printf "  {$branch}: "
     if test -z "$mode"; then
-	printf "'$path' was deleted"
+	echo "deleted"
     elif is_symlink "$mode" ; then
-	printf "'$path' is a symlink containing '"
-	cat "$file"
-	printf "'"
+	echo "a symbolic link -> '$(cat "$file")'"
     else
 	if base_present; then
-	    printf "'%s' was created" "$path"
+	    echo "modified"
 	else
-	    printf "'%s' was modified" "$path"
+	    echo "created"
 	fi
     fi
-    echo " in the $branch branch"
 }
 
 
 resolve_symlink_merge () {
     while true; do
-	printf "Use (r)emote or (l)ocal, or (a)bort? "
+	printf "Use (l)ocal or (r)emote, or (a)bort? "
 	read ans
 	case "$ans" in
 	    [lL]*)
@@ -88,10 +85,14 @@ resolve_symlink_merge () {
 
 resolve_deleted_merge () {
     while true; do
-	printf "Use (m)odified or (d)eleted file, or (a)bort? "
+	if base_present; then
+	    printf "Use (m)odified or (d)eleted file, or (a)bort? "
+	else
+	    printf "Use (c)reated or (d)eleted file, or (a)bort? "
+	fi
 	read ans
 	case "$ans" in
-	    [mM]*)
+	    [mMcC]*)
 		git-add -- "$path"
 		cleanup_temp_files --save-backup
 		return
@@ -166,7 +167,7 @@ merge_file () {
     remote_present && git cat-file blob ":3:$path" > "$REMOTE" 2>/dev/null
 
     if test -z "$local_mode" -o -z "$remote_mode"; then
-	echo "Deleted merge conflict for $path:"
+	echo "Deleted merge conflict for '$path':"
 	describe_file "$local_mode" "local" "$LOCAL"
 	describe_file "$remote_mode" "remote" "$REMOTE"
 	resolve_deleted_merge
@@ -174,14 +175,14 @@ merge_file () {
     fi
 
     if is_symlink "$local_mode" || is_symlink "$remote_mode"; then
-	echo "Symlink merge conflict for $path:"
+	echo "Symbolic link merge conflict for '$path':"
 	describe_file "$local_mode" "local" "$LOCAL"
 	describe_file "$remote_mode" "remote" "$REMOTE"
 	resolve_symlink_merge
 	return
     fi
 
-    echo "Normal merge conflict for $path:"
+    echo "Normal merge conflict for '$path':"
     describe_file "$local_mode" "local" "$LOCAL"
     describe_file "$remote_mode" "remote" "$REMOTE"
     printf "Hit return to start merge resolution tool ($merge_tool): "
-- 
1.5.1.rc2.1.g8afe-dirty
Previous: Theodore Ts'oNext: Matthias Lederhofer
Message 12 of 19 in “[GIT PULL] git mergetool fixes”
  1. Theodore Ts'oMar 29, 2007
  2. Fix minor formatting issue in man page for git-mergetoolTheodore Ts'o, Mar 29, 2007
  3. mergetool: Replace use of "echo -n" with printf(3) to be more portableTheodore Ts'o, Mar 29, 2007
  4. mergetool: Don't error out in the merge case where the local file is deletedTheodore Ts'o, Mar 29, 2007
  5. mergetool: portability fix: don't assume true is in /binTheodore Ts'o, Mar 29, 2007
  6. mergetool: portability fix: don't use reserved word functionTheodore Ts'o, Mar 29, 2007
  7. mergetool: factor out common codeTheodore Ts'o, Mar 29, 2007
  8. mergetool: Remove spurious error message if merge.tool config option not setTheodore Ts'o, Mar 29, 2007
  9. mergetool: Fix abort command when resolving symlinks and deleted filesTheodore Ts'o, Mar 29, 2007
  10. mergetool: Add support for Apple Mac OS X's opendiff commandTheodore Ts'o, Mar 29, 2007
  11. mergetool: Make git-rm quiet when resolving a deleted file conflictTheodore Ts'o, Mar 29, 2007
  12. mergetool: Clean up description of files and prompts for merge resolutionsTheodore Ts'o, Mar 29, 2007
  13. Matthias LederhoferMar 29, 2007
  14. Theodore TsoMar 30, 2007
  15. Randal L. SchwartzMar 30, 2007
  16. Matthias LederhoferMar 29, 2007
  17. Theodore TsoMar 29, 2007
  18. Junio C HamanoMar 29, 2007
  19. Theodore TsoMar 29, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.