GCommit不能在windows xp下使用fugitive.vim? [英] GCommit doesn't work with fugitive.vim under windows xp?

查看:162
本文介绍了GCommit不能在windows xp下使用fugitive.vim?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚刚发现了fugitive.vim,这很酷。但是,我遇到了一个问题(这是使用Windows XP,MSYS GIT 1.7,fugitive.vim 1.1和GVIM 7.2)。将文件添加到索引并检查状态工作正常,但是当我执行:GCommit 时,命令提示符会闪烁一秒,并且没有任何反应。没有办法输入提交信息,也没有提交。这是一个错误?难道我做错了什么?

?id = 428rel =nofollow noreferrer> msysgit的问题428 。
(From issue 467


michaelrgeddes,2010年4月7日


什么步骤会重现此问题?

从cmd shell中返回



  set GIT_EDITOR = false 
set ERRORLEVEL =
git commit
errorlevel 1 echo有错误%ERRORLEVEL%




预计会看到有错误1,但不会。



运行在Vista上的git 1.7.0.2.msysgit.0。



重要的是它会导致: Gcommit 'fugitive'vim集成失败。







解决方案:修补程序 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设置控制台代码页以匹配GUI代码页。
@chcp%cp_ansi%> nul
@ git.exe%*
+ @ set ErrorLevel =%ErrorLevel%
@rem恢复原始的控制台代码页。
@chcp%cp_oem%> nul
@goto退出
$ b $: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 / ftokens = 1-1 *% %a in(%*)do @set args = %% b
+ @ startgit-guiwish.exe%git_install_root%\libexec\git-core\git-gui - %args%

:quit
- @%COMSPEC%/ c exit / b%ErrorLevel%
+ @%COMSPEC%/ c exit / b%ErrorLevel %


I've just discovered fugitive.vim, which is pretty cool. However, I've run into a problem (this is using windows xp, msys git 1.7, fugitive.vim 1.1, and gvim 7.2). Adding files to the index and checking the status works just fine, but when I do a :GCommit, a command prompt flashes for a second and nothing happens. No way to type a commit message and nothing is committed. Is this a bug? Am I doing something wrong?

解决方案

It looks like issue 428 of msysgit.
(From issue 467)

Reported by michaelrgeddes, Apr 07, 2010

What steps will reproduce the problem?
From cmd shell

set GIT_EDITOR=false
set ERRORLEVEL=
git commit
if errorlevel 1 echo Has an error %ERRORLEVEL%

Expect to see "Has an error 1" but don't.

git version 1.7.0.2.msysgit.0 running on Vista.

Important since it causes :Gcommit failure in 'fugitive' vim integration.


Solution: patch the cmd/git.cmd script of your current msysgit installation.

cmd/git.cmd | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)

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%

这篇关于GCommit不能在windows xp下使用fugitive.vim?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆