我的〜/ .gitconfig
中有以下配置[diff]
tool = vimdiff
[diftool]
prompt = false
当我启动git difftool时,它默认以只读模式打开缓冲区。 我使用它来检查提交之前的更改,并说我发现一些小的更改,如我没有删除的注释掉的行或JS console.log语句,我被迫退出该工具并打开文件并进行更改。我非常想在视觉差异窗口中进行更改。
http://gitlog.wordpress.com/2011/03/30/git-1-7-4-2/ 说“”git difftool“并没有告诉(g)vimdiff它正在阅读的文件是什么 以只读方式打开。“从此我认为这种只读行为是理想的。
我很想知道为什么在difftool中选择只读行为作为默认行为。
有什么办法可以配置difftool来允许读/写吗?
从git, vimdiff and dirdiff,我看到vim和git diffall脚本的逃逸插件也可以作为替代方案,使这个差异审查过程更容易。使用逃犯是否会开启使用读/写视觉差异模式的可能性?
答案 0 :(得分:6)
如果您没有使用逃犯,可以使用
切换只读模式(每个窗格!):set readonly!
或
:set ro!
答案 1 :(得分:3)
Fugitive将允许您在区分时更改工作副本文件。只需运行:Gdiff
,就会出现带索引版本的垂直拆分。现在,您可以在工作副本中:diffput
(或简短dp
)将块放入索引文件中,或者从索引中放入:diffget
(或短do
)文件以从工作副本中获取块。一旦你拥有了你想要的索引文件中的所有内容,保存它,现在它将成为你的藏匿版本。
真正帮助我理解这个过程的是关于Fugitive.vim的#31到#35的vimcast:
http://vimcasts.org/episodes/archive