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

[PATCH] Remove tab character from conflicted files list part of the merge message

From
APAndy Parkins <andyparkins@gmail.com>
Date
Mar 13, 2007, 13:09 UTC
Message-ID
<200703131309.43767.andyparkins@gmail.com>
Merge can generate sections like this:
 Conflicts:
   file1
   file2
   file3
The filenames were moved forward by embedding a tab.  Tabs are variable
width, so there is no guarantee that the appearance would be the same on
different systems.  In this case the tabs are being used for formatting,
for formatting, spaces are better.

This patch simply swaps the tab for four spaces in the "Conflicts:" section.

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
---
The reason this makes a difference (to me), is that I often edit the
conflict section to say what the resolution of the conflict was,  I
happen to have expandtabs set for git log messages (to guarantee they
look the same regardless of the viewer's settings), and hadn't noticed
that git was putting tabs into the log message for me.
So what I thought I was formatting as (for example)
Conflicts:
    file.c
     * Chose upstream version over mine, but integrated my small typo fix.
Was appearing in the log display as
Conflicts:
        file.c
     * Chose upstream version over mine, but integrated my small typo fix.
Which isn't how I'd intended at all.

The fix is of course - no tabs. Tabs for formatting is always going to cause trouble, so this patch swaps the tab for spaces.

I don't think the actual number of spaces is important (I chose 4), as long as there are no tab-surprises in the log message (unless the user put them there themselves of course - but that's their own fault).

 git-merge.sh |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/git-merge.sh b/git-merge.sh
index 6ce62c8..a03d22b 100755
--- a/git-merge.sh
+++ b/git-merge.sh
@@ -482,7 +482,7 @@ else
 Conflicts:
 '
 		git ls-files --unmerged |
-		sed -e 's/^[^	]*	/	/' |
+		sed -e 's/^[^	]*	/    /' |
 		uniq
 	} >>"$GIT_DIR/MERGE_MSG"
 	if test -d "$GIT_DIR/rr-cache"
-- 
1.5.0.2.205.g74e20
Next: Johannes Schindelin
Message 1 of 6 in “Remove tab character from conflicted files list part of the merge message”
  1. Remove tab character from conflicted files list part of the merge messageAndy Parkins, Mar 13, 2007
  2. Johannes SchindelinMar 13, 2007
  3. Andy ParkinsMar 13, 2007
  4. Johannes SchindelinMar 13, 2007
  5. Andy ParkinsMar 13, 2007
  6. Junio C HamanoMar 14, 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.