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

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

什么是BeyondCompare?

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

为什么要进行代码比对?

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

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

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

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

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

选择后会打开下面的界面

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

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

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

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

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

比对的过程如下图。

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

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

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

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

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

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

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

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

相关文章
|
存储 关系型数据库 MySQL
mysql数据库如何做到定期备份
mysql数据库如何做到定期备份
958 2
|
Arthas 运维 Java
arthas 的使用场景、优点和缺点
Arthas 是Alibaba开源的Java诊断工具,它可以帮助开发人员或者运维人员查找问题、分析性能和bug追踪。以下是Arthas的一些使用场景: 1. 查看目标服务器应用程序的JVM信息。 2. 方法性能的排查和跟踪。例如,在实际使用过程中发现某个接口很耗时,但是无法在本地环境复现的时候,可以通过Arthas的trace来跟踪,它会输出方法内部路径每个节点的耗时。 3. 查找全局视角查看系统的运行状况、健康状况的信息。 4. 反编译源码,查看JVM加载的是否为预期的文件内容。
996 0
|
Web App开发 JavaScript 前端开发
安卓webview访问vue工程白屏/无响应/无法加载问题处理
本文目录 1. 问题出现 2. 尝试更换内嵌浏览器 3. 尝试各种babel配置 4. 二分排除法定位问题 5. 模拟器与真机测试还不一样 6. 总结 7. 反思
3250 0
|
Java Linux
【Linux】linux下使用命令修改jar包内某一个文件中的内容并重新运行jar程序
【Linux】linux下使用命令修改jar包内某一个文件中的内容并重新运行jar程序
594 0
|
7月前
|
供应链 监控 安全
业务上云的主要安全风险及网络安全防护建议
业务上云面临数据泄露、配置错误、IAM风险、DDoS攻击、合规与审计、供应链及内部威胁等安全挑战。建议采取全生命周期加密、自动化配置检查、动态权限管理、流量清洗、合规性评估、供应链可信验证及操作审批等措施,构建“预防-检测-响应”一体化安全体系,确保数据保护、权限收敛、合规审计和弹性防护,保障云端业务安全稳定运行。
|
11月前
|
XML 前端开发 Java
XML基本概念入门学习指南
XML(eXtensible Markup Language)是一种可扩展的标记语言,和HTML语言语法类似,同属于标记语言。
366 14
|
存储 开发框架 .NET
【博士每天一篇文献-综述】A Comprehensive Survey of Continual Learning Theory, Method and Application
本文综述了持续学习的理论基础、方法论和应用实践,探讨了五种主要的解决策略,包括基于回放、架构、表示、优化和正则化的方法,并深入分析了持续学习的不同场景、分类、评价指标以及面临的挑战和解决方案。
515 1
【博士每天一篇文献-综述】A Comprehensive Survey of Continual Learning Theory, Method and Application
|
12月前
|
SQL Java 数据库连接
快速搭建SSM项目【最全教程】~令狐小哥版
快速搭建SSM项目【最全教程】~令狐小哥版
715 1
|
开发框架 自然语言处理 Java
跨平台服务开发的利器——深入解析Thrift Compiler的工作机制与内部实现细节!
【8月更文挑战第18天】在现代软件开发中,代码生成器日益重要,能根据特定输入自动生成源代码,提高效率与可维护性。Thrift作为跨平台多语言框架,通过IDL文件定义数据和服务接口,并据此生成多语言代码,涵盖序列化、方法调用等。以示例IDL定义为例,Thrift Compiler生成服务端骨架与客户端代码框架,便于开发者添加业务逻辑。深入源码,“compiler/cpp/src/thriftl”目录下的组件负责词法、语法分析及代码生成,映射IDL至特定语言,体现编译原理与跨语言设计精髓。
262 0
|
网络虚拟化
网络二层环路,老练的网工,都是这么排查的!
网络二层环路,老练的网工,都是这么排查的!
417 0