$ git --version --build-options
git version 2.19.1.windows.1
cpu: x86_64
built from commit: 11a3092e18f2201acd53e45aaa006f1601b6c02a
sizeof-long: 4
sizeof-size_t: 8
$ cmd.exe /c ver
Microsoft Windows [Version 10.0.16299.665]
# One of the following:
> type "C:\Program Files\Git\etc\install-options.txt"
> type "C:\Program Files (x86)\Git\etc\install-options.txt"
> type "%USERPROFILE%\AppData\Local\Programs\Git\etc\install-options.txt"
$ cat /etc/install-options.txt
Editor Option: VisualStudioCode
Custom Editor Path:
Path Option: Cmd
SSH Option: OpenSSH
CURL Option: WinSSL
CRLF Option: CRLFCommitAsIs
Bash Terminal Option: MinTTY
Performance Tweaks FSCache: Enabled
Use Credential Manager: Enabled
Enable Symlinks: Disabled
Enable Builtin Rebase: Enabled
Enable Builtin Stash: Enabled
I had specified the editor at one point before the installer queried for you.
[core]
editor = 'C:\\Users\\zachary.bryant\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe' --wait
Bash
git merge
As git cannot run a fast-forward as there are commits on both sides of the merge, it makes a merge commit and prompts me in my default editor (VS Code) to specify the commit message since I didn't provide one.
Once VS Code/the commit message file is closed, git should resume normal operation.
I closed VS Code/the commit message file and git is still frozen waiting for the file to close. Ctrl-C does not end the process. I have to close the bash window.
* insert URL here *
VS Code dev here.
The problem here is that Git is setting up Code as the default editor and pointing directly to Code.exe, when it should point to bin\code.cmd instead.
Unfortunately, looking at https://github.com/git-for-windows/build-extra/blob/fafef64ee09410734571e181d578261d5cf700bb/installer/install.iss#L1291 there doesn't seem to be a good way to fix this...
@joaomoreno we wanted to avoid that extra process. Creating processes on Windows is really expensive, as you know...
Forcing the user to terminate git or close their VS Code instance is also expensive :)
Look, it has been advertised for years that you should use code --wait as core.editor setting if you want to use VS Code. And that's what we do, and it took quite a bit of time out of my busy schedule to set aside to get this support working. And it took more contributors more work to adapt to the user-wide installation of VS Code.
@melak47 if you now come and chime in from the sidelines, you will understand what my emotional response is, right? And I am sure that you want to set things right, too. Please feel free to do so.
Look, it has been advertised for years that you should use
code --waitascore.editorsetting if you want to use VS Code.
That's what I use, too.
And that's what we do, and it took quite a bit of time out of my busy schedule to set aside to get this support working.
And it took more contributors more work to adapt to the user-wide installation of VS Code.
I was pleasantly surprised when the git for windows installer offered to configure VS Code as the editor, so thank you and anybody else who worked on making that work!
But then I was surprised to find e.g. git commit waiting for the whole VS Code instance to close, instead of just the editor for the commit message. After some googling I ended up here, and found that it had indeed replaced the code --wait I had in my config before with "P:\\ath\\to\\Code.exe" --wait.
@melak47 if you now come and chime in from the sidelines, you will understand what my emotional response is, right? And I am sure that you want to set things right, too. Please feel free to do so.
All I meant was that using code.exe --wait instead of code.bat --wait would be a fine optimization if it worked the same, but currently it doesn't appear to do that.
VS Code should actually support this. I'll push my way in https://github.com/Microsoft/vscode/issues/60192 and make sure the current configuration works.
Great news! A fix for VS Code is in master. It will be release to our insider users next week and to our stable users next month.
So this ticket can be closed, right?
Most helpful comment
Great news! A fix for VS Code is in
master. It will be release to our insider users next week and to our stable users next month.https://github.com/Microsoft/vscode/issues/60192