2016-04-20 12 views
11

Cygwin 64のウィンドウでgitを使用しています。デフォルトのエディタviとgitは、デフォルトのエディタを使用します。 、「ESC」、その後cygwin内でgit commitを呼び出すときにvimが動作しない

git commit 
Vim warning: output is not to a terminal 
Vim warning: input is not from a terminal 

、VIが起動しますが、制御できない:私はVIMが開始される前にプロンプ​​トが表示されます、次のメッセージを「gitのコミット」と呼ぶときは「:」を使用することができず、私はcygwinのウィンドウをkillする必要があります。

enter image description here

どのように私は 'gitのコミット' のためのvimを使用することができますか?

+1

でなければなりません。デフォルトのエディタを変更することは、良い方法です: 'git config core。エディタのメモ帳 ' – Acemad

+1

パス上に別のVIを持っていませんか?スクリーンショットの最後の行が異常です 'D:/ ..' – matzeri

+0

'TERM = xterm git commit'を実行しようとするとどうなりますか? – andlrc

答えて

5

Git for Windows(msysgit)またはVim for Windowsがインストールされている可能性があります。これらのパッケージはCygwin64と互換性がありません。これらのインストールを無視するようにCygwin用のパス設定を行う必要があります。

もっと簡単なオプションは、これらのアイテムをアンインストールしてCygwinのバージョンを使用することです。

何らかの理由でそれらを保存する必要がある場合は、.bash_profileの変数$PATHをオーバーライドとして設定してください。既存の$ PATHからmsysgitとwindows vimのパスを差し引いて使用してください。

msysgit='/cygdrive/c/Program Files/git:' 
PATH="${msysgit//$PATH/}" 
msysvim='/cygdrive/c/Program Files (x86)/vim/vim74:' 
PATH="${mysysvim//$PATH/}" 

幸運:あなたは、bashのスクリプトに興味があれば、あなたの特定の状況に変更は、bashを使用するときにパスを削除するには、次のを試みることができます!

2

GYのCYGWINバージョンがインストールされているのではなく、GITのWindowsバージョンがインストールされています。 GITにはデフォルトで、独自のバージョンのVIを含むフルセットのUNIXツールが付属しています。残念ながら、VIのそのバージョンはCYGWINとうまく連動しません。これを回避する最善の方法は、GYをCYGWINにインストールして、CYGWINバージョンのVIまたはVIMを使用することです。

0

私はこの同じ問題に直面しました。 @ CYB.tachyonと@David BeckmanはどちらもWHI vim id breakingについて説明しました。しかし、何かをアンインストールするのではなく、私はDOSスタイルのコマンドプロンプトからgitコマンドを実行し、すべてスムーズに進みました。私は結局、vimのさまざまな味を清めてくれることは私の究極の解決策になると思いますが、あなたの仕事に乗りたいだけなら、これは即時の問題に対する最速の解決策でした。

0

これは、minttyによって引き起こされる可能性があります(this issueを参照)。

修正するには、2つの方法があります。代わりにminttyの

  1. 使用bash.exe:

    右のcygwinのショートカットをクリックして、C:\cygwin64\bin\bash.exe --login -i

  2. C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -からそれを変更
  3. 追加configへの正しいvimパス:

    git config --global core.editor "C:/cygwin64/bin/vim.exe"

    .gitconfigが認識できないため、パスにcygdriveを使用しないでください。そして、あなたが32ビットvimを使用している場合、パスはC:/cygwin/bin/

関連する問題