Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

difftool cannot find file, random characters in pathname. #1982

Closed
nomadpgmr opened this issue Dec 12, 2018 · 3 comments
Closed

difftool cannot find file, random characters in pathname. #1982

nomadpgmr opened this issue Dec 12, 2018 · 3 comments

Comments

@nomadpgmr
Copy link

  • [X ] I was not able to find an open or closed issue matching what I'm seeing

Setup

Git-2.20.0-64-bit.exe

$ git --version --build-options

** insert your machine's response here **
11:56:04.735378 exec-cmd.c:236          trace: resolved executable dir: C:/Program Files/Git/mingw64/bin
11:56:04.735378 git.c:418               trace: built-in: git version --build-options
git version 2.20.0.windows.1
cpu: x86_64
built from commit: 95155834166f64fe9666f2c0a4909f076080893a
sizeof-long: 4
sizeof-size_t: 8

 - Which version of Windows are you running? Vista, 7, 8, 10? Is it 32-bit or 64-bit?

$ cmd.exe /c ver

Microsoft Windows [Version 10.0.17134.471]
  • What options did you set as part of the installation? Or did you choose the
    defaults?
    Use Git from the command line (or prompt and also 3rd party software with latest buggy version)
    Use OpenSSH
    Use OpenSSL
    Check out as-is, commit Unix-style” RW
    Use Window’s default console window
    Enable file system caching,
    Enable Git Credential Manager,
    Enable symbolic links
# One of the following:
> type "C:\Program Files\Git\etc\install-options.txt"
Editor Option: VIM
Custom Editor Path:
Path Option: Cmd
SSH Option: OpenSSH
CURL Option: OpenSSL
CRLF Option: LFOnly
Bash Terminal Option: ConHost
Performance Tweaks FSCache: Enabled
Use Credential Manager: Enabled
Enable Symlinks: Enabled

  • Any other interesting things about your environment that might be related
    to the issue you're seeing?
    .gitconfig
    [diff]
    tool = winmerge
    [difftool "winmerge"]
    cmd = "'C:/Program Files (x86)/WinMerge/WinMergeU.exe'" -e "$LOCAL" "$REMOTE"

Same problem occurs if I try and use Meld.exe instead.

** insert your response here **
Rolling back to version 2.14.2.windows.1, the problem goes away.

Details

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

  • What commands did you run to trigger this issue? If you can provide a
    Minimal, Complete, and Verifiable example
    this will help us understand the issue.

BAD VERSION RESPONSE
set GIT_CURL_VERBOSE=1 
set GIT_TRACE=1
git version 2.20.0.windows.1
Run command: git difftool origin/master
11:39:06.399920 run-command.c:643       trace: run_command: GIT_DIFF_PATH_COUNTER=9 GIT_DIFF_PATH_TOTAL=9 'î�' 'default/setup menu/Board/Hardware/hardware_menu_test_scale.lib' 'C:\Users\rogerw\AppData\Local\Temp/e1ZMrb_hardware_menu_test_scale.lib' cd2fdeb3c644a582915c6827cb40e73118bb1894 100644 'default/setup menu/Board/Hardware/hardware_menu_test_scale.lib' 0000000000000000000000000000000000000000 100644
error: cannot spawn î?: No such file or directory
fatal: external diff died, stopping at default/setup menu/Board/Hardware/hardware_menu_test_scale.lib
NOTE Garbage character after GIT_DIFF_PATH_TOTAL=9
Does not matter if I answer Y/n to Launch Winmerge prompt.
  • What did you expect to occur after running these commands?

GOOD VERSION RESPONSE
set GIT_CURL_VERBOSE=1
set GIT_TRACE=1
git version 2.14.2.windows.1
Run command: git difftool origin/master
1:43:36.374208 run-command.c:626 trace: run_command: 'git-difftool--helper' 'default/setup menu/Board/Hardware/hardware_menu_test_scale.lib' 'C:/Users/rogerw/AppData/Local/Temp/sxU8Qa_hardware_menu_test_scale.lib' 'cd2fdeb3c644a582915c6827cb40e73118bb1894' '100644' 'default/setup menu/Board/Hardware/hardware_menu_test_scale.lib' '0000000000000000000000000000000000000000' '100644'
11:43:36.499147 git.c:340 trace: built-in: git 'config' 'diff.tool'
11:43:36.561660 git.c:340 trace: built-in: git 'config' 'difftool.winmerge.cmd'
11:43:36.624118 git.c:340 trace: built-in: git 'config' '--bool' 'mergetool.prompt'
11:43:36.686630 git.c:340 trace: built-in: git 'config' '--bool' 'difftool.prompt'

Viewing (9/9): 'default/setup menu/Board/Hardware/hardware_menu_test_scale.lib'
Launch 'winmerge' [Y/n]? n
Correctly returns to command prompt or displays diff if I say Yes.

  • What actually happened instead?

See trace above

  • If the problem was occurring with a specific repository, can you provide the
    URL to that repository to help us with testing?

n/a - used download from website.

@gunnar22
Copy link

Maybe the same as #1974

@dscho
Copy link
Member

dscho commented Jan 11, 2019

@PhilipOakley yep, I think you are spot on, this is likely the same bug as #2007.

@dscho
Copy link
Member

dscho commented Feb 27, 2019

And as #2007 has been addressed in v2.21.0, this here ticket is, too.

@dscho dscho closed this as completed Feb 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants