2013-08-31 15 views
11

Ich versuche, Vimdiff als Diff-Tool für Git zu verwenden, aber aus irgendeinem Grund sind die Dateien immer im schreibgeschützten Modus geöffnet. Es ist sinnvoll für die Originaldatei, aber nicht für die, die ich modifiziert habe (da ich sie noch nicht übernommen habe).Wie verhindert man, dass git vimdiff Dateien als schreibgeschützt öffnet?

Dies ist meine aktuelle .gitconfig:

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

Jede Idee, was dieses verursachen könnte?

Antwort

12

Das ist das standardmäßig gewünschte Verhalten für vimdiff. Sie können das Löschen mit: noro einstellen.

+0

Wissen Sie, ob eine Möglichkeit gibt es vimdiff einzurichten, so dass diese Option immer eingeschaltet ist? –

+2

Konstruieren Sie in Ihrer vimrc-Datei die folgende Zeile: set noro – Shunya

+0

@Laurent, während ich einige Hilfe auf vim ging, fand ich diese URL (sie könnte Ihnen helfen). Bitte überprüfen Sie den unteren Rand der Seite, die besagt "Ändern Sie lesen/nur Dateien zu lesen/schreiben, wenn sie bearbeitet werden" URL: http://vim.wikia.com/wiki/Setting_file_attributes_withoutoutloading_a_buffer. Ich denke, das sollte Teil Ihrer vimrc-Konfigurationsdatei sein. Bitte aktualisiere, ob das funktioniert. – Shunya

10

Der deafult Befehl, git für vimdiff verwendet wird: (durch Inspektion Prozessliste gefunden)

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

können Sie überschreiben diese (nicht -R zu verwenden, schreibgeschützten Modus) durch die difftool.vimdiff.cmd variable Einstellung.

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

Das Zitat ist schwierig. Ich würde es kopieren und einfügen.

+0

Dies ist vielleicht ein Fehler, fügen Sie direkt "set noreadonly" in Ihrer vimrc-Datei hinzu. – liuyang1

+0

@Procras: Ich denke dir versehentlich ein Wort. – bukzor

+0

@alexis Sie haben immer noch das doppelte Zitat für das letzte Wort verpasst. bitte fügen Sie es hinzu, um Copy/Paste für weitere Benutzer sicher zu machen – ZuBB

0

[diff] Werkzeug = vimdiff -R

+0

Dies sagt vim, im schreibgeschützten Modus zu starten. – klokop