RE: difftool sends malformed path to exernal tool on Windows
- From
- Paul Lotz <plotz@lsst.org>
- Date
- Feb 24, 2014, 16:44 UTC
- Message-ID
- <000801cf317f$ac1be2b0$0453a810$@lsst.org>
- In-Reply-To
- <20140221103821.GA21414@gmail.com>
David,
Thanks for the helpful reply.
As you suggested, I modified the .gitconfig file to have: [difftool "test"] cmd = echo \"$LOCAL\" \"$REMOTE\"
and ran $ git difftool -t test
An example of the the resulting console output is: C:/Users/Paul/AppData/Local/Temp/I8L2Bc_WriteTestParameters.vi Commands/StartAutomatedTest/WriteTestParameters.vi
Paul
-----Original Message----- From: David Aguilar [mailto:davvid@gmail.com] Sent: Friday, February 21, 2014 3:38 AM To: Paul Lotz Cc: git@vger.kernel.org Subject: Re: difftool sends malformed path to exernal tool on Windows
On Mon, Feb 17, 2014 at 03:14:01PM -0700, Paul Lotz wrote:
Show 7 quoted lines
> From the Git Bash command line, I enter $ git difftool > > and type ‘y’ when the file I want to difference appears. Git > correctly calls the external diff tool (LVCompare.exe), but the path > for the remote file Git passes to that tool is malformed (e.g., > C:\/Users/Paul/AppData/Local/Temp/QCpqLa_calcLoadCellExcitation.vi). > Obviously the \/ (backslash forwardslash) combination is incorrect.
If this is the case then difftool is not the only one with this problem.
We use the GIT_EXTERNAL_DIFF mechanism to run difftool under "git diff", so it may be that the paths are mangled by "git diff" itself. I don't really know enough about msysgit to know for sure, though.
What do you see if you create a dummy tool which just does "echo"?
[difftool "test"] cmd = echo \"$LOCAL\" \"$REMOTE\"
Then run:
$ git difftool -t test
Show 12 quoted lines
> For the record, I have successfully made calls to LVCompare.exe > manually from a Windows command prompt directly (without Git). > > The relevant portion of the .gitconfig file is: > [diff] > tool = "LVCompare" > [difftool "LVCompare"] > cmd = 'C:/Program Files (x86)/National Instruments/Shared/LabVIEW > Compare/LVCompare.exe' \"$LOCAL\" \"$REMOTE\" > > > For the record, the operating system is Windows 8.1.
Do any msysgit folks know whether GIT_EXTERNAL_DIFF is a known issue? -- David