gpt4 book ai didi

language-agnostic - 语义差异实用程序

转载 作者:行者123 更新时间:2023-12-03 04:46:03 25 4
gpt4 key购买 nike

我正在尝试找到一些语义差异/合并实用程序的好示例。比较源代码文件的传统范例是通过比较行和字符来工作的。但是有没有任何实用程序(对于任何语言)在比较文件时真正考虑代码的结构

例如,现有的 diff 程序将报告“在第 125 行的第 2 个字符处发现差异。文件 x 包含 v-o-i-d,其中文件 y 包含 b-o-o-l”。专门的工具应该能够报告“方法 doSomething() 的返回类型从 void 更改为 bool”。

我认为这种类型的语义信息实际上是用户在比较代码时正在寻找的信息,并且应该是下一代编程工具的目标。可用的工具中有这方面的示例吗?

最佳答案

我们开发了一种能够精确处理这种情况的工具。检查http://www.semanticmerge.com

它基于代码结构进行合并(和差异),而不是使用基于文本的算法,这基本上允许您处理如下情况,涉及强重构。它还能够呈现差异和合并冲突,如下所示:

enter image description here

并且不会与正在移动的文本 block 混淆,因为它首先解析,所以它能够基于每个方法(实际上是每个元素)显示冲突。像前面这样的情况甚至不需要手动解决冲突。

enter image description here

这是一个语言感知的合并工具,很高兴终于能够回答这个问题:-)

关于language-agnostic - 语义差异实用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/523307/

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