类似于SVN的文档内容差异对比工具winmerge
原文:http://www.jianshu.com/p/99282a4f3870
https://sourceforge.net/projects/winmerge/?source=typ_redirect
http://winmerge.org/downloads/
WinMerge 免费开源的文档内容差异对比工具中文版下载
----------------------------------------------------------------------------------------------------------------------------------------
经常写文档或者写程序代码的朋友肯定经常会遇到相似的文档需要比较一下它们的差异。例如在程序代码升级、备份或修改后,想知道新代码与旧代码到底有哪些地方不同;或者你写了几分文稿,反反复复地修改过好几次,你想找回他们具体的差异,但这时想要用肉眼去对比,一行一行地查看无异于逼自己的脑细胞去自杀。其实,我们大可以利用一些专业的对比软件,比如Beyond Compare;但BC是一款商业软件,需要购买。而今天介绍的就是一款完全免费且开源的文件内容差异对比工具WinMerge。
WinMerge是一款运行于Windows系统下的免费开源的文件比较/合并工具,使用它可以非常方便地比较多个文档内容甚至是文件夹与文件夹之间的文件差异。适合程序员或者经常需要撰写文稿的朋友使用……
WinMerge的使用方法其实很简单,只要将2份要比较的文档拖放到它主界面上即可,如下图,左边的黄色和灰色就是文档的差异地方,这两个文档差异灰常大哟。

再看看,下面的2个文档,就差那么两行,特别像图中的那行黄色的,那个bolRebuildFiles和bxlRebuildFiles,要是用肉眼你能对比得出来吗?

WinMerge其实还可以对比文件夹差异的,但是个人感觉它的比较结果不是非常直观(如下图),相反Beyond Compare就非常直观了。

此类比较软件只能对比纯文本的文档,如果你要比较Word和WPS的文档,可以参考这里和这里
当然,相比同类的商业软件Beyond Compare与UltraCompare等,WinMerge在很多方面都不如前两者,但凭借着小巧便携且免费开源等特性,相信同样也会获得很多朋友的喜爱,毕竟不是所有人都需要每时每刻都要用的。为备一时之需,WinMerge这样免费正版的小工具或许更加合适呢,起码不用满天地去找Key了~
类似于SVN的文档内容差异对比工具winmerge的更多相关文章
- 运用 Range 对象处理 Word 文档内容
运用 Range 对象处理 Word 文档内容 在所有 Office 应用程序中,Microsoft Word 可能是应用最广泛的应用程序,它还经常在自定义 Office 解决方案中扮演重要的角色 ...
- 织梦DedeCMS首页调用单页文档内容的方法
很多使用织梦dedecms单页文档功能的朋友都想知道如何在织梦首页调用单页文档的内容,下面就教大家具体的实现方法: 具体步骤如下: 首先在首页模板需要显示单页文档内容的地方插入如下代码: {dede: ...
- Mongodb(2)创建数据库,删除数据库,创建集合,删除集合,显示文档内容
显示所有数据库列表:show dbs > show dbs local .078GB runoob .078GB > 显示当前数据库:db > db runoob > 显示所有 ...
- Citrix 服务器虚拟化之二十八 XenApp6.5发布文档内容
Citrix 服务器虚拟化之二十八 XenApp 6.5发布文档内容 XenApp可发布以下类型的资源向用户提供信息访问,这些资源可在服务器或桌面上虚拟化: 1) 服务器桌面:发布场中服务器的整个 ...
- XML解析之sax解析案例(一)读取contact.xml文件,完整输出文档内容
一.新建Demo2类: import java.io.File; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXPar ...
- java操作office和pdf文件java读取word,excel和pdf文档内容
在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...
- Python读取本地文档内容并发送邮件
当需要将本地某个路径下的文档内容读取后并作为邮件正文发送的时候可以参考该文,使用到的模块包括smtplib,email. #! /usr/bin/env python3 # -*- coding:ut ...
- js传输txt文档内容
要求:实现修改text文档内容,即可将text修改内容传到页面显示: HTML: <!doctype html> <html lang="en"> < ...
- 文档内容类似项处理-Shingling
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jituotianxia2009/article/details/25339807 集合的Jaccar ...
随机推荐
- LN : leetcode 263 Ugly Number
lc 263 Ugly Number lc 263 Ugly Number Write a program to check whether a given number is an ugly num ...
- Scala-基础-运算符
import junit.framework.TestCase /** * 运算符 */ class Demo3 extends TestCase { def test_+ { var x = 10; ...
- JavaScript开发心得--如何传递某行数据给下一页
1, 应用场景 在某个html页面显示一批数据,如20个用户的名称.年龄等,每行都要一个编辑按钮,点击编辑后,将此行数据带入某个专门的编辑页进行显示,修改后保存. 问题是 点击编辑按钮后,如何得知要编 ...
- C/C++ struct定义、声明、对齐方式
一.定义/声明方式 第一种:仅有结构体名,不定义/声明变量 struct MyStruct { int i: char a[10]; double b; }:第二种:有结构体名,并声 ...
- 15年第六届蓝桥杯第七题_(string)
手链样式 小明有3颗红珊瑚,4颗白珊瑚,5颗黄玛瑙.他想用它们串成一圈作为手链,送给女朋友.现在小明想知道:如果考虑手链可以随意转动或翻转,一共可以有多少不同的组合样式呢? 请你提交该整数.不要填写任 ...
- Java基础(一)--操作符
Java底层都是使用操作符来操作Java中的数据 常见的操作符:+.-.*./.= 优先级: 当一个表达式存在多个操作符时,操作符的优先级决定了计算顺序,这点在我们刚开始学习数学的时候就会了解到 如果 ...
- vue基础---模板语法
Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据.所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循规范的浏览器和 HTML 解 ...
- js一般用法
<1> 通过id查找html元素 var x=document.getElementById("intro"); <2> 通过标签名查找html元素 v ...
- 【搜索、bfs】Find The Multiple
Problem Given a positive integer n, write a program to find out a nonzero multiple m of n whose de ...
- 你相信吗??Python把数字也当做对象!@@@对象,名称绑定,引用计数
本文学习自:http://blog.csdn.net/yockie/article/details/8474408 1.对象 Python中, 万物皆对象,包括12345等int常量.不信吗??用di ...