2

我偶然发现了一篇旧博客文章提出了这一点,不幸的是,这只是一个未实现的想法。这是否同时完成/如何实现?(我听说 TortoiseGit 可能会这样做,但我正在运行 Linux)

另一种选择也可能是这里提到的重新压缩方法,建议使用 git 过滤器跟踪未压缩的 OpenDocument 并在结帐时重新压缩它们,这将提供至少合并(和区分)xml 内容而不是二进制垃圾(或有损odt2txt),但是我也没有找到有关此方法的任何更新,关于此的最后一篇文章警告了此方法中的潜在缺陷。

4

2 回答 2

0

你可以试试,你会告诉我们的。据我记得,合并工具被配置为有 4 个输入,因此您必须配置 Git 以将其用作合并工具。

您必须在配置文件中添加几行merge.toolmergetool.<tool>.pathmergetool.<tool>.cmd

http://www.kernel.org/pub/software/scm/git/docs/git-config.html(在页面中搜索“merge.tool”)

http://www.kernel.org/pub/software/scm/git/docs/git-mergetool.html

希望能帮助到你

于 2012-08-03T11:59:24.853 回答
0

twalberg评论的启发,我编写了简单的脚本od2fodfod2od并使用--convert-toLibre/OpenOffice 的参数将压缩的 xml 转换为未压缩的 xml,反之亦然。由于在 LibreOffice GUI 运行时拒绝 CLI 操作的错误,我不得不编写解决方法loInstance

#!/bin/bash
tmpdir=$(mktemp -d)
cp -rf ~/.libreoffice $tmpdir
soffice -env:UserInstallation=file://$tmpdir $@
rm -rf $tmpdir

od2fod并且fod2od很简单:

#!/bin/bash
loInstance --headless --convert-to f${1#*.} $1

#!/bin/bash
loInstance --headless --convert-to ${1#*.f} $1

现在可以设置 acleansmudge过滤.gitattributes,但我注意到 LO 会跟踪多余的元数据,这会阻碍clean-smudge循环。所以现在这只能作为一个不完美的textconv工具git-diff......

于 2012-08-03T16:09:01.173 回答