问题标签 [diffmerge]

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.

0 投票
1 回答
1244 浏览

git - 设置 git diff 以使用 diffmerge

我想将我的 git 设置diffmerge为默认的差异编辑器,而不是默认的 Unix diff

不幸的是,当我这样做时

我从 DiffMerge 中得到以下错误(以弹出窗口的形式):

你能告诉我我做错了什么吗?

0 投票
0 回答
1253 浏览

git - 如何让 diffmerge 作为 git 的合并工具运行

我正在使用 git 运行 osx 10.9,并且试图让 diffmerge 作为我的合并工具运行。我已经安装了 diffmerge 并且可以从我的 bash shell 启动它 -

但是,当我尝试将其设置为我的合并工具时-

并运行

我得到以下输出 -

知道为什么这会失败吗?(可能值得注意的是 diffmerge 在我运行时并未列为有效工具git mergetool --tool-help

0 投票
1 回答
35 浏览

version-control - 基于 2 个分支差异的 3 路合并(更新)文件

我有 3 个文本文件:

  1. 分支 A,版本 i (Ai)
  2. 分支 A,版本 i-1 (Ai-1)
  3. B 分支,版本 i-1 (Bi-1)

是否有任何合并/差异工具来生成具有以下规则的分支 B,版本 i (Bi):

  1. 如果Ai=Ai-1,则在Bi中使用Bi-1
  2. 如果 Ai<>Ai-1=Bi-1,则在 Bi 中使用 Ai
  3. 如果 Ai<>Ai-1<>Bi-1,则冲突

我从 SourceGear Vault 尝试了 DiffMerge,但找不到这样的自动化选项。

这篇 wiki 文章也没有帮助:

en.wikipedia.org/wiki/Merge_(revision_control)

0 投票
1 回答
157 浏览

emf - 在 EMF 比较差异模型中访问元素属性

我使用 EMF Compare 比较了符合自定义元模型的 2 个模型。
我生成了 Diff 模型并将其保存到 .xmi 文件中。
目前,我正在研究如何使用 ATL 中的差异模型将差异转换为另一个模型。
问题是我无法弄清楚如何访问正在更改的元素的属性(在我的自定义元模型中定义)。我可以访问这样的更改:

但我无法访问已更改元素的属性。

0 投票
6 回答
16049 浏览

windows - Git difftool 未启动外部 DiffMerge 程序

由于我在 Windows 7 上并且确实使用了 SourceGear 的 DiffMerge 工具,因此我一直在遵循此答案中“ Dave 的博客条目”链接中的指示。我已将目录添加到我的 PATH 系统变量并将我的文件放在那里:git\cmdgit-diff-diffmerge-wrapper.sh

(是的,这是 DiffMerge 的正确路径。)

我已经编辑了我的.gitconfig文件以包含diffdifftool块(我直接从帖子中复制了这些行,他确实留在了注释掉的#external行中。我将此添加到我的文件末尾;可以吗?)

所以我去做,git bash然后按git difftool HEAD~ 67b8679 -- js/site/pizzabuilder.js回车。什么都没发生。如果我这样做git difftool HEAD~ 67b8679,离开我想要的文件,我会得到这个:

它继续处理提交之间不同的所有文件,但它从不启动 DiffMerge。我不知道如何解释错误;什么命令没有找到?difftool? 我在 git 中运行 1.7.11,difftool据说从 1.6.3 版开始包含在 git 中。

当我查看错误中引用的文件的第 17 行时,这就是那里的内容:

作为此块的一部分:

谁能帮我吗?我是 的日常用户git,但几乎不是超级用户,而且我对 Windows shell 脚本一无所知,所以按照那篇文章中的说明进行操作几乎是我目前知识的局限。

0 投票
1 回答
690 浏览

linux - 将 rhapsody DiffMerge 设置为 svn 合并工具

我正在尝试将 rhapsody DiffMerge 设置为 SVN 中的合并工具。

在我设置了.subversion/config:

在 Rhapsody/DiffMerge 中,我设置了:

使用 DiffMerge IBM 帮助: http ://pic.dhe.ibm.com/infocenter/rhaphlp/v7r6/index.jsp?topic=%2Fcom.ibm.rhp.diffmerge.doc%2Ftopics%2Frhp_t_col_specifying_diffmerge_cmdline_syn.html


当冲突出现时:


有人有这个问题吗?

亚当

0 投票
3 回答
487 浏览

mercurial - 如何在提交之间查看子存储库中的更改

我有一个带有 subrepos 的 mercurial repo(也是 mercurial)。想象一下我更改了子存储库和主存储库的情况。现在我想查看几个提交之间的更改,包括子存储库中的更改。

可能吗?

我使用 TortoiseHG 和 diffmerge。在从 TortoiseHg 调用视觉差异的 diffmerege 中,我看不到几个提交之间子存储库中的变化。

0 投票
1 回答
677 浏览

git - 在 CodeAnywhere 和 Git 上使用 DiffMerge - “未找到”消息

我已经在我的 Mac 上安装了 DiffMerge 并配置了 git 以按照他们的说明使用它,它运行良好。

http://twobitlabs.com/2011/08/install-diffmerge-git-mac-os-x/#comment-140648

有任何想法吗?是否需要其他配置或其他东西......?

我运行的配置是:

我运行的命令(当需要解决 git 冲突时)是:

谢谢

添加评论:

当我将 SSH 终端连接到远程服务器(例如 CodeAnywhere 服务器)并运行“git mergetool”时,它显然会运行 /usr/lib/git-core/git-mergetool,但在远程系统上找不到 diffmerge . 我根本看不到 diffmerge 在哪里实际安装了遥控器上的任何东西。

这是与 diffmerge 相关的 git config 部分:

看来这是 git 用来运行 diffmerge 的实际命令:

引发错误的文件是 /usr/lib/git-core/git-mergetool ,我在该文件中跟踪到这一行,该文件显然是从命令行运行上述命令并且在远程机器上找不到 diffmerge 因为它没有安装在远程机器上因为它安装在我的本地机器上:

似乎我错过了在远程上安装的东西,或者我错过了一个配置,告诉它将文件“临时复制”到我的本地,然后在我的本地运行 diffmerge,然后将远程文件返回到远程。我只是看不出在这种情况下遗漏了哪个。

谢谢

感谢@nwinkler 的快速回复。如果我理解您的建议,它是在本地 Mac 上运行术语 win,而不是在远程上运行术语 win(在 Mac 上运行意味着 diffmerge.sh 等默认情况下可用于 Mac 的术语通过驱动器赢取它作为术语赢运行),而远程术语赢将无法直接访问我的本地驱动器。如果我错了,请纠正我。

我确实按照您的建议运行了“which diffmerge”,但根本找不到它(未安装在遥控器上)。

我会更深入地研究您的建议,看看是否要在遥控器上安装一些东西,并尝试您建议的“安装程序”。

如果我从本地 Mac 上运行的术语 win 运行它,它确实可以正常工作。

我同意它没有在遥控器上找到 diffmerge。我只是看不到那里要安装什么....

谢谢,继续研究并进一步尝试您的建议。

0 投票
1 回答
39 浏览

diffmerge - 在使用 Collaborator 的 DiffMerge 比较 xml 文件时,有什么比使用文本更好的设置?

Collaborator 使用 DiffMerge 比较文件。它提供了一种添加规则集的方法。没有为 XML 文件提供任何内容。我希望能够在不包括评论的情况下进行比较。我可以在同一行上获得部分来表现\<!--.*--\>

多行注释不起作用。

0 投票
0 回答
237 浏览

mercurial - 尝试在 Cygwin 中进行 hg 合并时,“工具 diffmerge 需要 GUI”

我正在尝试hg merge在 Cygwin 上运行,我已将其设置为在发生冲突时启动 DiffMerge。尽管如此,vimdiff当我合并时,我会陷入困境。

此错误消息是在提交090b1a665901中引入的,并将启用 GUI 的设备定义为nt(Windows) 或mac(OSX) 机器,或带有DISPLAY变量集的机器。在我的 Cygwin 安装中,DISPLAY未设置,并且os.nameposix.

如果我设置DISPLAY为任意字符串,则hg merge成功启动 DiffMerge:

我错过了什么?Python 是否错误地报告我正在运行posix?Cygwin 应该设置DISPLAY吗?

我在 Windows 7 上使用 Cygwin 2.0.4,Mercurial 版本 3.3,DiffMerge 4.2.0。