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

git diff --text does not work during rebase for binary files

From
ДПДилян Палаузов <dilyan.palauzov@aegee.org>
Date
Mar 21, 2021, 17:30 UTC
Message-ID
<6afc8f1365627f08247f73da7e7e362c0b8ea560.camel@aegee.org>
Hello,
I create a small text file ending with \0 and add it to git:
In .gitattributes I specify:
*.txt diff merge=text text
I create several commits by changing the small text file.
The result is at https://github.com/dilyanpalauzov/git-diff-biinary .
I do now
  git rebase -i HEAD~2
and before the “second commit” type E to edit that commit.
I change the small file.
git add a.txt && git rebase --continue
git says:
[detached HEAD bc00e34] second commit
 Date: Sun Mar 21 19:16:15 2021 +0200
 1 file changed, 2 insertions(+), 1 deletion(-)
warning: Cannot merge binary files: a.txt (HEAD vs. 04c77de (third
commit))
Auto-merging a.txt
CONFLICT (content): Merge conflict in a.txt
error: could not apply 04c77de... third commit
Resolve all conflicts manually, mark them as resolved with
"git add/rm <conflicted_files>", then run "git rebase --continue".
You can instead skip this commit: run "git rebase --skip".
To abort and get back to the state before "git rebase", run "git rebase
--abort".
Could not apply 04c77de... third commit
'git diff' and 'git diff --text' show:

diff --cc a.txt index 7a61015,dc817ec..0000000

--- a/a.txt
+++ b/a.txt

The file does not contain <<HEAD===>>> markers, despite having
merge=text attribute.

HOW CAN I force git diff to show the differences and git merge to
include the <<<===>>> markers?

I have to say, that at different occassions git diff --text does work
ass expected (e.g. when I call git diff --cached --text).

I call now 
git rebase --abort
git log -p

git shows the differences in the small text file ending with \0.  So
apparently log reads the option, but diff does not.

Using git 2.30.2.

Greetings
  Дилян
Next: Bagas Sanjaya
Message 1 of 4 in “git diff --text does not work during rebase for binary files”
  1. Дилян ПалаузовMar 21, 2021
  2. Bagas SanjayaMar 22, 2021
  3. Дилян ПалаузовMar 22, 2021
  4. Jeff KingMar 26, 2021

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.