问题标签 [difftool]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 如何使“git difftool --dir-diff”与 vim 一起工作
我很高兴git difftool --dir-diff
与 Beyond compare 合作,以显示目录和文件之间的整体差异并在它们之间导航。
然而,当谈到 vimdiff 时,它似乎不支持来自 git 的 dir diff。我创建的 git 别名如下
在我做类似的事情之后,它会在文件浏览器git dirdiff HEAD~1 HEAD
中使用 vim 在左右列出我的 2 个目录。netrw
但是,在其中任何一个上按 enter 不会使文件夹在两侧展开,更不用说打开具有并排差异的文件。
vimdiff 可以很好地在可视模式下显示单个文件差异,有没有办法让它也适用于--dir-diff
?
git - 什么是默认的 git diff 工具(和合并工具)?
什么是默认的 git diff 工具(和合并工具)?
我在哪里(以及如何)可以找到它?
我从来没有明确地为 git difftool(也没有 mergetool)设置任何配置,
所以git config --get difftool
什么也没显示。
git 文档说(https://git-scm.com/docs/git-difftool):
diff.tool
如果未设置配置变量,git difftool
将选择合适的默认值。
我怎样才能知道它选择了哪一个?“合适
”
的算法是如何工作的?
让我分享一下我试图通过我的 git 找出当前选择的 diff 工具的原因:
我在执行时遇到了一些奇怪的 diff 结果git diff
(我怀疑 BOM 处理问题)。
我想询问供应商(例如,p4merge
),
但不确定是否是p4merge
,vimdiff
或其他任何东西。
我希望可能有一个类似的命令git difftool --current
。
visual-studio-code - 我可以在 VS Code difftool 模式下突出显示字符吗?
当 VS Code 用作差异工具时,例如使用git difftool
,它以红色和绿色显示更改的行。有没有办法突出显示更改的字符(除了线条之外或代替线条),以便它们更加突出?
git - git:并行查看特定提交的源代码
我正在处理源代码并想查看以前提交的代码。通常我会用git difftool --dir-diff
difftool 来做这个并融合。但是,当我想查看更远的提交或重构之前的提交时,meld 会使其难以阅读,因为代码更改太多。
我能想到的另一个解决方案是git stash
更改,签出另一个提交并查看代码。但是我无法查看我当前的代码,而且它也需要很长时间。
我正在寻找(也许)一个工具,它可以打开以前提交的源代码,以便我查看与当前代码平行的情况。基本上就像dirdiff
没有差异部分的解决方案。我正在使用 git cli。谢谢和最好的问候。
git - Git difftool 将所有文件复制到临时位置
今天我正在尝试为我的git repo 使用特定的差异工具,这是必要的,因为我的项目文件是来自编辑器的软件包,并且它适用于我的项目文件夹的所有内容文件和结构。
我可以运行差异工具(由编辑器提供)但是:
- Normaly(没有配置),只比较修改过的文件......
- 如果我使用--diff-dir,我有两个文件夹(临时目录中的左右),但只有修改过的文件。
我需要将所有文件都放在临时目录(左右)中,因为编辑器差异工具可以处理我项目文件夹的所有文件和结构。
我怎样才能做到这一点 ?
谢谢。塞德里克。
git - git difftool 没有按照 .gitconfig 中的配置工作
我使用 Beyond Compare 作为我的外部差异工具。当我在 .gitconfig 中的新计算机上配置它时,它不起作用,就像我在其他计算机上所做的那样。如果我用太多引号指定 extcmd,那么它确实有效。
现在和以前的一大区别是我在我的新存储库上使用 LFS。
.gitconfig 文件:
不起作用(使用单引号或双引号):
是否有效:
我怎样才能让它工作以便我可以使用
git difftool HEAD
?Git LFS 是否会导致我的问题?
我的新计算机上是否有其他错误配置导致我的问题?
我尝试将配置中的单引号 (') 更改为双引号 ("),但这也不起作用。
我在全新安装的 Windows 10 上使用 git 版本 2.29.2.windows.2。
编辑:忘记明确“不起作用”是什么意思:它没有打开 Beyond Compare,但没有错误消息。它似乎在几秒钟内什么都不做:
我的整个 .gitconfig(以防万一):https ://hastebin.com/icuduxecen.ini
git - how to keep unparameterized "git difftool" call from opening specific file types
There are some binary files (sqlite) in the git repo I'm working in (I can't change that). I do not want to ignore the changes in these files, but I also do not want a call to "git difftool" to open them if they are changed, because my difftool (meld) freezes for a while when trying to diff these files. Is there a solution that allows me to keep calling "git difftool" without any additional parameters, so that all modified files, except those binary files will be opened in my difftool ?
FYI: I'm on Ubuntu
visual-studio - 在 Visual Studio 中是否可以为同一文件类型提供两种不同的比较工具?
我有 BeyondCompare 的许可证,并且我已经将它配置为用于 *.csproj 文件。当我比较 *.cs 文件时,我更喜欢使用 VS 比较工具来使用 Intelisense,但有时我会错过 BeyondCompare 的一些实用程序。
是否可以有某种上下文菜单让我在比较文件时选择要使用的工具?
谢谢
git - 使用 vscode 作为 git 版本 (2.31.1) difftool
我安装了 git 版本 2.31.1.windows.1 并按照所有 git 中显示的所有必要步骤逐步尝试使用 VSCode 作为我的主要 difftool,我将这些行放在 gitconfig 文件中:
使用以下步骤:
git config --global diff.tool vscode
git config --global difftool.vscode.cmd "code --wait --diff $LOCAL $REMOTE"
甚至在 Windows 中将 VSCode 添加到PATH中,虽然我在运行时打开 VSCode 没有问题git config --global -e
,但是当我输入命令时git difftool
没有任何反应,它只是开始一个新行。
git - 在 Debian Linux v. 10 (buster) 中使用 git difftool 进行文件比较
在 Debian Linux v. 9 中,我使用以下命令进行文件比较,该命令运行正常:
git difftool /file/a /file/b
在 Debian Linux v. 10 中,我以相同的方式使用此命令并出现以下错误:
fatal: not a git repository (or any of the parent directories): .git
请帮帮我,解决它。
PS:我在工作中没有使用任何 git-repositories,只是来自 git 的 difftool。