如何使用Beyond Compare软件进行代码比对

简介: 如何使用Beyond Compare软件进行代码比对

什么是BeyondCompare?

Beyond Compare是一款不可多得的专业级的文件夹和文件比对工具。使用它可以很方便的比对出两个文件夹或者文件不同之处。并把相差的每一个位元组用颜色加以表示,查看方便。并且支持多种规则对比。

为什么要进行代码比对?

每个站长或多或少都会对文件进行一些代码修改,打补丁的时候如果直接覆盖补丁文件的话,那么之前修改过的代码就没有了。因此,我们需要进行代码比对然后合成一个既保留了我们之前的修改代码又增加了补丁代码的特殊补丁包。

下面以合成wap代码为例讲解下Beyond Compare这款软件的使用。

安装完后BeyondCompare后,会在右击选项里加入比对的选项,软件在帖子最后面。

在wap文件夹上右击,然后选择选为左侧对比窗口。

在我们网站文件的文件夹上右击,然后选择与“Discuz!X1.5_WAP_build_20101230_SC_GBK”进行比较。

选择后会打开下面的界面

点击编辑下的全部选择,然后点击操作下的开始比较,如下图。

弹出的窗口里选择关联规则比较,然后点击开始,会自动进行比对,然后得出一个比对的文件列表。

我们只关心不同的文件,不需要管相同的文件和只存在于某一侧的文件,点击差异文件前的+号,会显示所有差异文件列表。

下面进行比对文件的重点,双击第一个差异文件,会打开一个差异比对的界面。

在这个界面里存在差异代码的行会显示为红色背景,这里要提一下也会存在蓝色背景的差异行,这是因为软件认为这些代码是注释,对于蓝色的代码要自己判断下是否真的是注释,如果是注释可以不用管,如下图。

比对的过程如下图。

选中差异代码行的左侧代码,然后点击工具栏的插入到右侧按钮,就可以把左侧的代码插入到右侧文件中。

(这里右侧为我合成后的文件,所以要使用插入到右侧按钮,如果你合成后的文件在左侧,那么就选中差异代码行的右侧代码,然后使用插入到左侧按钮插入到左侧文件中。)

整个文件的代码合成完后,点击右侧的保存按钮保存合成的文件。

(这里右侧为我合成后的文件,所以要使用右侧的保存按钮,如果你合成后的文件在左侧,那么就使用左侧的保存按钮。)

具体的比对过程不做赘述,俗话说熟能生巧,相信各位用过几次就会熟悉使用这个软件了,也会掌握到更多方便比对的小窍门。

保存后点击窗口的关闭按钮,然后按上面说的方法比对下一个文件,直到比对合成完所有的差异文件,这时右侧文件的代码就已经是你比对合成后的代码了。

(这里右侧为我合成后的文件,所以右侧文件的代码是我合成后的代码,如果你合成后的文件在左侧,那么左侧文件的代码就是你合成后的代码。)

另外如果是打补丁,那么比对的时候你只需要找到这个文件里你修改的地方加到另一侧文件即可,其他差异部分属于补丁修改,不做处理。

相关文章
|
Java Windows 应用服务中间件
|
6月前
|
人工智能 边缘计算 搜索推荐
AI产品测试学习路径全解析:从业务场景到代码实践
本文深入解析AI测试的核心技能与学习路径,涵盖业务理解、模型指标计算与性能测试三大阶段,助力掌握分类、推荐系统、计算机视觉等多场景测试方法,提升AI产品质量保障能力。
|
开发工具 git
SourceTree配置BeyondCompare代码冲突解决工具
SourceTree配置BeyondCompare代码冲突解决工具
1140 0
|
内存技术
解码AAC裸流为PCM写入文件
使用FFmpeg库将AAC裸流解码为PCM数据并写入文件的过程。
305 4
|
存储 开发框架 .NET
【博士每天一篇文献-综述】A Comprehensive Survey of Continual Learning Theory, Method and Application
本文综述了持续学习的理论基础、方法论和应用实践,探讨了五种主要的解决策略,包括基于回放、架构、表示、优化和正则化的方法,并深入分析了持续学习的不同场景、分类、评价指标以及面临的挑战和解决方案。
926 1
【博士每天一篇文献-综述】A Comprehensive Survey of Continual Learning Theory, Method and Application
|
存储 安全 Linux
句柄是什么?一文带你了解!
今天又学习了一个装X概念——句柄,看字面意思,感觉跟某种器具有关,但实际上,这个词可不是用来打造家居用品的。
2743 0
|
异构计算 内存技术
FPGA进阶(1):基于SPI协议的Flash驱动控制(一)
FPGA进阶(1):基于SPI协议的Flash驱动控制(一)
828 0
|
XML SQL Java
IntelliJ IDEA 插件 MybatisX 在mapper和xml间跳转
IntelliJ IDEA 插件 MybatisX 在mapper和xml间跳转
4530 0
|
JSON Kubernetes Go
IDEA使用Kubernetes插件编写YAML
IDEA使用Kubernetes插件编写YAML
759 0
IDEA使用Kubernetes插件编写YAML

热门文章

最新文章