问题标签 [unified-diff]

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 回答
60 浏览

awk - 从 unfied diff 中删除某些文件

我有一个补丁可以应用于遗留代码库。那里有很多名为的文件pom.xml,要跳过对其进行的更改。如何从补丁中删除它们?

在末尾删除一个额外的行(需要进一步处理)。

我可能需要一个解决方案来删除两个模式之间的行,包括第一个模式和不包括第二个模式。我仅限于 MSYS,因此只能访问 Windows 命令、sed 和 mawk。

这是一个输入示例。那里有三个条目,第二个要删除。

到目前为止,我发现的所有解决方案要么删除带有模式的起始行和尾随行,要么一个都不删除。

0 投票
1 回答
1321 浏览

svn - TortoiseSVN 与工作副本的统一差异

在 TortoiseSVN 中,可以通过在修订日志中右键单击它,然后单击“将更改显示为统一差异”来将修订的更改视为统一差异。但这并不能让我将工作副本的更改视为统一差异。有可能以某种方式做到这一点吗?

我还注意到我可以在 Windows 资源管理器中右键单击并选择TortoiseSVN->Create patch来执行我想要的操作,但它也会将差异保存为我不想要的文件。我只想查看差异。

0 投票
1 回答
414 浏览

python - 在python中反向diff -u

我需要在 python 中编写一个模块,该模块获取 unix diff -u 命令的输出以及用于创建该输出的文件之一,并返回输出第二个文件。

diff -u 返回统一格式的diff文件

任何人都可以向我解释真正要了解这种统一格式吗?

0 投票
1 回答
517 浏览

bash - 如何将文件名附加到统一差异标签

我正在编写一个 bash 脚本,它需要显示远程文件和我的本地副本之间的差异。我通过一个命令来做到这一点:

这会产生类似的东西:

我想在标签中包含 $filepath 值,但我不知道这是否可行或如何做到。像这样的东西:

有什么帮助吗?

0 投票
1 回答
129 浏览

c# - 阅读统一差异并提取到 excel

我已经从 TFS 中提取了统一格式的代码差异。现在我想阅读这个差异文本(统一格式),然后以自定义格式将其提取到 excel 中。 所以我需要一个解析器,它可以读取差异文本并让我删除/添加的更改、行号等。这就是我想要实现的,假设 TFS 生成了以下差异

现在我想阅读此文本,然后将其移动到可能具有类似 Changes_Added Changes_Deleted Line-No 我尝试使用ParseDiff nuget 包的列的 excel 中,但由于缺少文档,我不确定它是否可以读取统一差异文本或如何使用它。.Net/C# 中是否有我可以使用的标准解析器?如果没有任何替代方案,将不胜感激。

0 投票
0 回答
115 浏览

python - 有没有办法使用 difflib.unified_diff 在列表中显示索引?

我想比较文本文件并查看进行了哪些更改。我不仅想看到这些变化,还想看看这些词在新列表中的位置。这是文档中的示例代码:

我希望它在新单词的新列表中显示索引。例如,在 python、eggy 和 hamster 旁边,应该分别表示 0、1 和 2。我尝试编辑 difflib.py 但这导致示例失败并且没有导致我的常规代码输出发生任何变化。

有任何想法吗?谢谢你的帮助!

0 投票
1 回答
2314 浏览

python - 为什么Python difflib 库中的unified_diff 方法会遗漏一些字符?

我正在尝试检查行之间的差异。这是我的代码:

它打印:

“a”、“b”和“c”发生了什么?谢谢!

0 投票
1 回答
624 浏览

git - 如何识别和列出 git 提交中的唯一帅哥?

我有一个包含大量(数百个)类似大块的提交,我想列出提交中的每个唯一大块以便比较它们。

我编写了以下 GNU awk 脚本,它将每个块写入一个唯一的文件 ( hunk-[md5-of-hunk].txt):

然后我用 运行它git show [commit-SHA] | awk -f my_script.awk,它会创建并列出结果文件。它适用于我的目的,但有没有办法使用 git 的管道命令更有效地做到这一点。

例子

假设提交的补丁看起来像这样(为了清楚起见,减少到下面的 1 行上下文):

我希望能够确定只有 3 个独特的帅哥,看看它们是什么。即:

独特的大块头1:

独特的大块头2:

独特的大块头3:

0 投票
1 回答
3055 浏览

javascript - 在浏览器中为 diff2html 创建统一的差异文本

是否有一个库可以从diff2html可以使用的两个字符串生成统一差异?我试过difflib但输出似乎不符合 diff2html 需要的要求。我需要一个可以在网页中导入的 .js 库来生成 JSON 之间的差异。

尝试使用该lineterm参数,但无法使该工具正常工作。如果我以文档中的字符串为例,那么它可以工作:

但无法获得 difflib 的任何输出以在 diff2html 中生成任何内容。

0 投票
1 回答
146 浏览

git - 如何使用 unidiff 解析器解析 git diff -U 输出

我需要带有上下文的帅哥(添加和删除的行),所以我使用 git diff -u 来获取差异。我可以做line.is_added来获得lines_added,但这些行将不包括上下文行。如何解析此差异以获取lines_added删除的行以及一些上下文行。现在我有

本质上我想要