Description

Description:

I ran into this scenario with Arcanist:

$ arc diffStarting build (pass `--config unit.csharp.xunit.skip-build=true` to disable)...ExceptionCommand failed with error #128!COMMANDgit commit --amend --allow-empty -F "C:\Users\....\AppData\Local\Temp\b7lisnvxvxkokks0\402B90B.tmp"STDOUT(empty)STDERRfatal: Unable to create 'C:/Code/.../.git/index.lock': File exists.If no other git process is currently running, this probably means agit process crashed in this repository earlier. Make sure no other gitprocess is running and remove the file manually to continue.(Run with `--trace` for a full exception trace.)

When this happens, Arcanist doesn't save the message anywhere and the message is lost. I then have to retype it in the editor again.

Reproduction Steps:

Have an Arcanist project / repository where you are about to run "arc diff".

Run while [ 0 -eq 0 ]; do git status; done in another shell (this simulates IDEs which are excessively polling the Git working tree status).