gpt4 book ai didi

git、vimdiff 和 dirdiff

转载 作者:IT王子 更新时间:2023-10-29 01:19:34 25 4
gpt4 key购买 nike

我正在尝试使用 vimdiff+ dirdiff.vim在 Vim 内部区分多个文件,并使用 Git 进行版本控制。

对于 Mercurial,可以使用 mercurial extdiff扩展名。

我在网上找到的将 Vim 与 Git diff 集成的唯一方法是在单个文件上使用 vimdiff,如 this post 中所述。 .

有谁知道怎么用vimdiff+dirdiff+git吗?

最佳答案

git 1.7.11版本之前

git-diffall 是我需要的,非常感谢。借助这个page关于 git difftool 和这个 one关于从命令行运行 vim+dirdiff,我将 $HOME/.gitconfig 写为:

[diff]
tool = default-difftool

[difftool "default-difftool"]
cmd = vim -f '+next' '+execute \"DirDiff\" argv(0) argv(1)' $LOCAL $REMOTE

[difftool]
prompt = false

git-diffall 放入我的 PATH 后,我可以将工作目录与分支 dev 进行比较:

git diffall dev

--copy-back 也是我需要的,如果我想从 Vim 持久地修改工作目录:

git diffall --copy-back dev

从 git 版本 1.7.11 开始

自版本1.7.11 ,“git difftool”学会了简化事情的“--dir-diff”选项,不再需要 git-diffall

.gitconfig 包含:

[diff]
tool = default-difftool
[difftool "default-difftool"]
cmd = vim -f '+next' '+execute \"DirDiff\" argv(0) argv(1)' $LOCAL $REMOTE '+syntax off'

例如工作目录与分支 dev 的差异是通过以下方式完成的:

git difftool -d dev

关于git、vimdiff 和 dirdiff,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8156493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com