代码之家  ›  专栏  ›  技术社区  ›  Ross Fuhrman

比较两种方法的文本

  •  3
  • Ross Fuhrman  · 技术社区  · 16 年前

    有没有一种工具可以对两种方法进行比较?我正在研究一些遗留代码,这些代码有几个100-200行方法,其中包含大量重复,我想将重复内容抽象出来。能够区分这两种方法将是一个巨大的帮助。如果这很重要,我将使用.NET和Visual Studio 2008。

    10 回复  |  直到 8 年前
        1
  •  1
  •   simon    16 年前

    不知道这对您是否可行,但(毫不奇怪)Emacs可以对两个文件中的区域执行此操作,这两个文件都是逐行或逐字比较。

    如果感兴趣,请查找emacs-ediff(它还执行文件/缓冲区比较、文件与祖先、补丁、3个文件比较和合并…。相当全面)。我认为在其他任何编程编辑器中都没有看到这么好的diff/merge系统。

        2
  •  2
  •   johndsamuels    11 年前

    我用 WinMerge ClipboardDiff .然后您可以比较剪贴板内容和突出显示的内容,而不需要保存任何文件。

        3
  •  1
  •   chills42    16 年前

    我已经用过 WinMerge 解决那个问题。

    我将这些方法复制到WinMerge中的新文档中,然后在那里工作,直到多余的部分被切掉。

        4
  •  1
  •   Matt Grande    12 年前

    我建议西米安: http://www.harukizaemon.com/simian/

    编辑以添加新链接。

        5
  •  0
  •   s_t_e_v_e    16 年前

    我已经使用了检查样式,但它是为Java编写的。

        6
  •  0
  •   stevehipwell    16 年前

    Visual Studio 2008 TeamEdition进行了文档比较。因此,根据您运行的版本,您可能只需要右键单击解决方案资源管理器并选择“比较”。

        7
  •  0
  •   Pablo Fernandez    16 年前

    Subversion GUI客户端 Tortoise 可以对两个文本文件(或本例中的代码文件)进行比较,只需将这两种方法复制到不同的txt文件中,选择它们,右键单击,然后从Tortoise菜单中选择Diff。

        8
  •  0
  •   shsteimer    16 年前

    Sourcegear's Diffmerge 很好,很自由。您需要将代码剪切到不同的文件中,这样它们就可以进行边/边比较。您可以使用这个(和大多数类似的实用程序)一次比较三个文件。

        9
  •  0
  •   Derrick Moser    16 年前

    你可以使用像这样的工具 Diffuse .只需将文件拖放到任一窗格中,从一个方法中选择一行,右键单击另一个窗格中对应的行,然后选择“与所选内容对齐”。甚至可以双击,然后直接在漫反射中重新分解代码。

        10
  •  0
  •   mellodev    13 年前

    这是一个基于Web的工具,可以进行很好的比较。只是用它来比较两个相似的方法,它们被重构在一起。

    http://www.text-compare.com/

    推荐文章