Skip to content

Spurious Carriage Return breaks diff tool #1930

Closed
@stravant

Description

@stravant
  • I was not able to find an open or closed issue matching what I'm seeing

Setup

  • Which version of Git for Windows are you using? Is it 32-bit or 64-bit?
git version 2.17.1.windows.2
cpu: x86_64
built from commit: a60968cf435951d9411fc0f980a2e362d5cccea2
sizeof-long: 4
  • Which version of Windows are you running? Vista, 7, 8, 10? Is it 32-bit or 64-bit?
Microsoft Windows [Version 10.0.17134.407]
  • What options did you set as part of the installation? Or did you choose the
    defaults?
Editor Option: VisualStudioCode
Path Option: Cmd
SSH Option: OpenSSH
CURL Option: OpenSSL
CRLF Option: CRLFAlways
Bash Terminal Option: MinTTY
Performance Tweaks FSCache: Enabled
Use Credential Manager: Enabled
Enable Symlinks: Disabled

Details

  • Which terminal/shell are you running Git from? e.g Bash/CMD/PowerShell/other

Tested and reproduced using both Git Bash and CMD.

git init
[Create list-of-words.txt, containing some lines of text, with CRLF line endings]
git add list-of-words.txt
git commit -m "Initial Commit"
[Edit list of words adding a naked Carriage Return character without a corresponding Line Feed in the middle of the list]
git diff
  • What did you expect to occur after running these commands?

The diff should show that a single line change where a carriage return (^M) was added in the middle of the file.

  • What actually happened instead?

The diff tool thinks that the entire file changed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions