Owncloud和Seafile冲突解决程序
cloud-resolve-conflicts的Python项目详细描述
owncloud经常生成一堆冲突文件。航海是好得多,但它发生了。有些冲突文件是完全没有意义的(它们相当于放置在它们旁边的非冲突文件),有些文件确实与它们的邻居不同。此脚本的目的是解决这两种类型的冲突文件。
安装
依赖项
Python3.3或更新版本。
python 3.3特定包:pathlib flufl.enum。
附加
python包:send2trash(用于删除垃圾箱中的文件)。
kdiff3(用于文件比较)。
用法
简单执行
cloud-resolve-conflicts ~/ownCloud
这将执行将所有冲突文件备份到~/owncloud/conflict_backup.tar的操作,永久删除所有无意义的冲突文件,并要求您决定是否使用真正的冲突文件(它将显示并排打开文件的kdiff3窗口)。您可以使用选项–program name指定其他程序,如vimdiff或meld。
删除扩展名
的所有冲突文件使用ag和pyp删除当前目录中所有冲突的*.aux文件(及其相应的普通文件)(如果愿意,可以使用grep和xargs):
cloud-resolve-conflicts --list-all | ag '.aux$'| pyp "'rm \"{}\"'.format(p)"| sh
(欢迎使用带有适当空格转义的更简单示例)
其他用法
有关更多选项(如禁用备份、将文件删除到垃圾箱、使用不同的比较程序等),请使用:
cloud-resolve-conflicts --help
贡献
发送错误报告(特别是严重错误,如数据丢失)并对BitBucket发出请求。如果这个剧本对你有帮助的话,就让它成为明星。
保修
我为自己写了这个剧本并成功地使用了它。我希望这个计划也对你有用。我写了一些测试以确保它能正确地工作。但一如既往:
本软件按“原样”提供,作者不承担与本软件有关的所有保证,包括对适销性和适用性的所有暗示保证。在任何情况下,作者都不对任何特殊的、直接的、间接的或后果性的损害,或由于使用或执行本软件而引起的或与之相关的,由使用、数据或利润损失引起的任何损害负责,无论是在合同诉讼、疏忽或其他侵权诉讼中。