Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

escape double quotes in git config from cmd

Tags:

git

cmd

I want to create a batch file that initializes all the key/values in my .gitconfig file.

I have troubles trying to set the following section from cmd:

[mergetool "p4merge"]
    cmd = p4merge "$BASE" "$LOCAL" "$REMOTE" "$MERGED"

I tried:

git config --global mergetool.p4merge.cmd "p4merge \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\""

But the result is:

[mergetool "p4merge"]
    cmd = p4merge \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"

How should I escape that double quotes from cmd?

like image 695
lante Avatar asked Aug 27 '14 18:08

lante


1 Answers

The answer to "Git on Windows: How do you set up a mergetool?" proposes:

  • From a git bash session:
git config --global mergetool.p4merge.cmd 'p4merge.exe \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"'
  • or, from a windows cmd.exe shell, using 3 double-quotes """ to escape one ":
git config --global mergetool.p4merge.cmd "p4merge.exe """$BASE""" """$LOCAL""" """$REMOTE""" """$MERGED""""

So it depends if you launched git-bash.bat or git-cmd.bat

Other examples in CMD:

git config --global core.editor """"C:\Users\vonc\AppData\Local\Programs\Microsoft VS Code\Code.exe""" --wait"
# or
git config --global core.editor """"C:/Program Files/Notepad++/notepad++.exe""""
like image 173
VonC Avatar answered Oct 17 '22 09:10

VonC