escape double quotes in git config from cmd
cmd, git
Solution
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""""
Problem
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?