Похоже, выпуск 428 msysgit.
(Из выпуск 467 )
Об этом сообщает michaelrgeddes, 07 апреля 2010 г.
Какие шаги воспроизведут проблему?
Из оболочки cmd
set GIT_EDITOR=false
set ERRORLEVEL=
git commit
if errorlevel 1 echo Has an error %ERRORLEVEL%
Ожидается сообщение «Имеет ошибку 1», но не отображается.
git версии 1.7.0.2.msysgit.0, работающий в Vista.
Важно, поскольку это вызывает :Gcommit
сбой в «скрытой» интеграции vim.
Решение: patch cmd/git.cmd
скрипт вашей текущей установки msysgit.
cmd / git.cmd | 6 ++++ -
1 файл изменен, 4 вставки (+), 2 удаления (-)
diff --git a/cmd/git.cmd b/cmd/git.cmd
index 048f615..8cd4397 100644
--- a/cmd/git.cmd
+++ b/cmd/git.cmd
@@ -19,13 +19,15 @@
@rem Set the console codepage to match the GUI codepage.
@chcp %cp_ansi% > nul
@git.exe %*
+@set ErrorLevel=%ErrorLevel%
@rem Restore the original console codepage.
@chcp %cp_oem% > nul
@goto quit
:gui
@if "%2"=="citool" @goto default
-@start wish.exe "%git_install_root%\libexec\git-core\git-gui" -- %2 %3 %4 %5 %6 %7 %8 %9
+@for /f "tokens=1-1*" %%a in ("%*") do @set args=%%b
+@start "git-gui" wish.exe "%git_install_root%\libexec\git-core\git-gui" -- %args%
:quit
-@%COMSPEC% /c exit /b %ErrorLevel%
+@"%COMSPEC%" /c exit /b %ErrorLevel%