odt文件其实由若干文本文件组成,git 经过一些配置是可以支持diff的。
step 1:
在git项目中i添加.gitattributes文件, 内容如下:
*.odt diff=odt
step 2:
在.git/config文件中添加下面一段:
[diff "odt"]
binary = true
textconv = /usr/local/bin/odt-to-txt
step 3:
创建/usr/local/bin/odt-to-txt文件,并添加内容如下:
#! /usr/bin/env perl
# Simplistic OpenDocument Text (.odt) to plain text converter.
# Author: Philipp Kempgen
if (! defined($ARGV[0])) {
print STDERR "No filename given!\n";
print STDERR "Usage: $0 filename\n";
exit 1;
}
my $content = ‘‘;
open my $fh, ‘-|‘, ‘unzip‘, ‘-qq‘, ‘-p‘, $ARGV[0], ‘content.xml‘ or die $!;
{
local $/ = undef; # slurp mode
$content = <$fh>;
}
close $fh;
$_ = $content;
s/<text:span\b[^>]*>//g; # remove spans
s/<text:h\b[^>]*>/\n\n***** /g; # headers
s/<text:list-item\b[^>]*>\s*<text:p\b[^>]*>/\n -- /g; # list items
s/<text:list\b[^>]*>/\n\n/g; # lists
s/<text:p\b[^>]*>/\n /g; # paragraphs
s/<[^>]+>//g; # remove all XML tags
s/\n{2,}/\n\n/g; # remove multiple blank lines
s/\A\n+//; # remove leading blank lines
print "\n", $_, "\n\n";
step 4:
设置文件执行权限:
chmod +x /usr/local/bin/odt-to-txt
现在用一下diff命令吧:
sdf1/ews/doc$ git diff f223a86348123b4cd682611f105ea0d4c9c8990f 智能调度
系统.odt
diff --git a/doc/智能调度系统.odt b/doc/智能调度系统.odt
index 96a6e29..b6fd443 100644
--- a/doc/智能调度系统.odt
+++ b/doc/智能调度系统.odt
@@ -1349,14 +1349,24 @@ Kmeans聚类查询有了Kmeans聚类训练后,利用
‘K:centroids就可以轻
--
根结点
+
+
+
决策树的起点。对于决策树来说,所有节点的分类或者回归目标都要在根节点
已经定义好了。如果决策树的目标变量是离散的(序数型或者是列名型变量),则
称它 为分类树(Classification Tree);如果目标变量是连续的(区间型变
量),则称它为回归树(Regression Tree)。
--
分支节点
+
+
+
决定了数据进入哪个分支, 每个分支节点都有一个分支函数
--
-叶节点: 决策树的输出
+叶节点
+
+
+
+ 决策树的输出
@@ -1381,6 +1391,9 @@ Kmeans聚类查询有了Kmeans聚类训练后,利用
‘K:centroids就可以轻
--
信息增益公式
+
+
+
有了熵的公式后,计算信息增益公式如下:原文地址:http://blog.csdn.net/csfreebird/article/details/43916267