Skip to content

No error when failing to add an extant file using Windows-style paths #24

Open
@me-and

Description

@me-and

Reported here. I've attempted to report it upstream, but my email doesn't seem to have got through; need to see if it's just a delay in it getting synced to Gmane or if there's something more fundamental going wrong.

Quoting from the report I attempted to send upstream...

If I attempt to git add an extant file specified using a Windows-style path on Cygwin Git, this doesn't add the file, and produces no error message:

$ pwd  # As seen by Cygwin
/cygdrive/c/tmp

$ cygpath -aw .  # As seen by Windows
C:\tmp

$ git init
Initialized empty Git repository in /cygdrive/c/tmp/.git/

$ git add 'c:\tmp\file' || echo non-zero exit code  # Errors out as expected
fatal: pathspec 'c:\tmp\file' did not match any files
non-zero exit code

$ touch file

$ git add 'c:\tmp\file' || echo non-zero exit code  # No error this time...

$ git status  # ...even though the file didn't get added
On branch master

Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        file

nothing added to commit but untracked files present (use "git add" to track)

I wouldn't expect adding the file to actually succeed, but I would expect it to either succeed or produce an error, rather than silently failing.

Experimentation shows I get the same behaviour for 'c:\tmp\file', 'c:/tmp/file' and 'subdir\file'. I'm seeing this on v2.8.0; the downstream report says the same behaviour occurs on v2.7.4, and I've also seen what appears to be the same behaviour on a v2.0.5 build I produced to check.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions