Re: git diff --text does not work during rebase for binary files
On 22/03/21 00.30, Дилян Палаузов wrote:
> Hello,
>
> I create a small text file ending with \0 and add it to git:
Did you mean `echo -e "\0" >> a.txt`?
Show 63 quoted lines
> 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
> Дилян
>
Does `file a.txt` shows it as being binary file? I do the similar and it just says "data".
--
An old man doll... just what I always wanted! - Clara