2013-08-31 35 views
11

私はGitのdiffツールとしてvimdiffを使用しようとしていますが、何らかの理由でファイルが常に読み取り専用モードで開いています。元のファイルには当てはまりますが、私が変更したファイルには当てはまりません(まだコミットしていないので)。git vimdiffがファイルを読み取り専用で開くのを防ぐには?

これは私の現在の.gitconfigです:これを引き起こしている可能性が何

[diff] 
     tool = vimdiff 
[merge] 
     tool = vimdiff 
[difftool] 
     prompt = false 

任意のアイデア?

答えて

12

これはvimdiffのデフォルトの動作です。 set noroを使用して設定を解除することができます。 Gitはあるはvimdiffのために使用しています

+0

は、このオプションが常にオンになるようにはvimdiffを設定するにはどのような方法があるかどう知っていますか? –

+2

あなたのvimrcファイルで、次の行を構成してください。 noro – Shunya

+0

@Laurent、私はvimのいくつかの助けに行っていましたが、私はこのURLを見つけました。ページの下部にある「編集時に読み込み/書き込み専用のファイルを読み書きする」というメッセージが表示されます URL:http://vim.wikia.com/wiki/Setting_file_attributes_without_reloading_a_buffer私はこれがあなたのvimrc設定ファイルの一部であるべきだと思います。これがうまくいけば更新してください。 – Shunya

10

deafultコマンド:(プロセスリストを調べています)

vim -R -f -d -c "wincmd l" -c 'cd "$GIT_PREFIX"' "$LOCAL" "$REMOTE"

あなたがdifftool.vimdiff.cmd変数を設定することによって(-R、読み取り専用モードを使用しないように)このオーバーライドすることができます。

git config --global difftool.vimdiff.cmd 'vim -f -d -c "wincmd l" -c '\''cd "$GIT_PREFIX"'\'' "$LOCAL" "$REMOTE"'

引用トリッキーです。私はそれをコピーして貼り付けます。

+0

これは何らかのエラーかもしれませんが、あなたのvimrcファイルに "set noreadonly"を直接追加してください。 – liuyang1

+0

@Procras:私はあなたが誤って単語と思う。 – bukzor

+0

@alexisあなたはまだ最後の単語の二重引用符を開始していません。それ以上のユーザーのためにコピー/ペーストを安全にするために追加してください。 – ZuBB

0

[差分] ツール=はvimdiff -R

+0

これはvimに読み込み専用モードで起動するよう指示します。 – klokop

関連する問題