On Mon, Mar 03, 2014 at 04:24:15PM -0700, Paul Lotz wrote: > David, > > OK, I did as you suggested, and the results were revealing. > > First, I replaced "echo" with "cat". Result: The contents of both files appeared in the Git Bash Window. > > Then I tried calling LVCompare from the Git Bash and Windows Command Prompt windows with variations on the paths. > > Here are the most relevant results: > First from the Windows Command Prompt: > 1) This command works: > C:\LSST_TS\SystemSW\M2AADT>"C:\Program Files (x86)\National Instruments\Shared\L > abVIEW Compare\LVCompare.exe" C:\Users\Paul\AppData\Local\Temp\Typedefs_TestStat > us_Before.ctl C:\LSST_TS\SystemSW\M2AADT\Typedefs\TestStatus.ctl > [General note: > I saved a copy of the temp file and replaced the hex string with the string 'Before' to make the file stick around. The paths are otherwise the same.] This is aligns with: http://zone.ni.com/reference/en-XX/help/371361H-01/lvhowto/configlvcomp_thirdparty/ "lvcompare.exe <absolute path to VI 1> ..." The key thing is the mention of absolute paths. What is happening is that lvcompare.exe (or likely it's a Windows thing) changes its current directory to its installation directory under Progra~1. That means the relative paths passed in by difftool won't be found. The way to fix it is to redirect your difftool config to a script that makes all paths absolute. This script can then call the real lvcompare.exe. You just need to tweak the lvcompare part in your .gitconfig to look like this: [difftool "lvcompare"] cmd = ~/bin/lvcompare.sh \"$LOCAL\" \"$REMOTE\" ... and install an executable lvcompare.sh shell script in in your $HOME/bin. Something like this: #!/bin/sh abspath () { ( cd "$(dirname "$1")" && printf "%s/%s" "$(pwd)" "$(basename "$1")" ) } lvcompare="C:\\Program Files (x86)\National Instruments\\Shared\\LabVIEW Compare\\LVCompare.exe" local=$(abspath "$1") remote=$(abspath "$2") exec "$lvcompare" "$local" "$remote" > 2) C:\LSST_TS\SystemSW\M2AADT>"C:\Program Files (x86)\National Instruments\Shared\L > abVIEW Compare\LVCompare.exe" C:\Users\Paul\AppData\Local\Temp\Typedefs_TestStat > us_Before.ctl Typedefs\TestStatus.ctl > > Result: Error message with reference to C:\Program Files (x86)\National Instruments\Shared\L > abVIEW Compare\supportVIs\_prolvcmp.llb\Typedefs\TestStatus.ctl > > Observation: The second path has to be the full path, not the relative path we get back using "echo". Yes, that's what it looks like. -- David -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html