On Thu, Apr 21, 2016 at 2:11 PM, Ray Donnelly <mingw.andr...@gmail.com> wrote: > Here's a patch for git 2.8.1 that I wrote for MSYS2 to address the > same issue. Because I'd read this thread before I started working on > it (and generally since it's good to) I kept it in mind to make it > work for Cygwin in-case you wanted to use it: > > https://raw.githubusercontent.com/Alexpux/MSYS2-packages/6b7aceea4ad2e5bd28143a2de8c4a0d7453013dc/git/git-2.8.1-Cygwin-Allow-DOS-paths.patch > > I'm running the test-suite now which takes an age, but I don't see any > problems with it so far. I didn't add any tests covering using DOS > paths though. I've tested it with git add and clone with DOS relative > and absolute paths.
FYI, the test results were the same before and after this patch. > > Best regards, > > Ray. > > On Thu, Apr 21, 2016 at 12:40 AM, Eliot Moss <m...@cs.umass.edu> wrote: >> On 4/20/2016 7:14 PM, Ernie Rael wrote: >>> >>> On 4/20/2016 1:37 PM, Eliot Moss wrote: >>>> >>>> I think this will do it: >>>> >>>> function git { >>>> declare -a ARGS >>>> for n in "$@" ; do ARGS+=("$(cygpath -u -- "${n}")") ; done >>>> command git "${ARGS[@]}" >>>> } >>>> >>>> The reason this is a little more complicated than some other approaches >>>> might be is that it will also work for arguments that have space, e.g., >>>> >>>> git add "C:/My Documents/foo.doc" >>> >>> >>> Notice that >>> IFS=$'\n'; args=($(cygpath -m -- "$@")); IFS=$' \t\n' >>> also handles arguments with spaces. You don't need the shell for loop. >> >> >> Ok ... but I would save the previous value of IFS and restore it -- never >> know what a user might be using there ... >> >> Best -- E >> >> >> -- >> Problem reports: http://cygwin.com/problems.html >> FAQ: http://cygwin.com/faq/ >> Documentation: http://cygwin.com/docs.html >> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple >> -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple