【问题标题】:A custom directory/folder merge tool自定义目录/文件夹合并工具
【发布时间】:2011-04-10 04:39:07
【问题描述】:

我正在考虑开发一个自定义目录/文件夹合并工具,作为学习函数式编程的一部分,以及解决一个非常个人化的问题。

我通常在三台不同的计算机上工作,我倾向于在本地积累大量文件(文本、视频、音频),然后煞费苦心地将它们合并以进行备份。我很确定我有欺骗和不需要的文件浪费空间。我正在迁移到云备份解决方案作为辅助备份源,我希望通过消除冗余文件来尽可能多地节省空间。

我有一个复杂的深度嵌套目录结构,我想要一个自动化工具来自动遍历文件夹树并执行合并。另一个问题是我混合使用 Linux 和 Windows,而且我的许多文件的名称中都有空格...

我最初的想法是,我需要为每个文件生成哈希,并使用哈希而不是文件名进行比较(文件夹名称中的空格以及文件内容在源和目标之间可能不同)。 RIPEMD-160 在性能和防撞之间取得了很好的平衡吗?还是 SHA-1 就足够了? SHA-256/512 是否矫枉过正?

哪个函数式编程环境带有一组用于生成这些哈希的现成库?我倾向于 OCaml...

【问题讨论】:

  • 你为什么要重新发明轮子。 git 和 github 呢。
  • Git 不能很好地处理大型二进制文件。但是你可以试试 git 和 git-annex 或者一些类似的 git 附加软件。不确定这是否适合您的用例。
  • 这是shameless plug

标签: merge ocaml ripemd


【解决方案1】:

查看Unison file synchronizer

我自己不使用它,但我听到了很多正面评价。是一个有一定理论基础的成熟软件。

另外,它是用 OCaml 编写的。

【讨论】:

    猜你喜欢
    • 2014-05-18
    • 1970-01-01
    • 1970-01-01
    • 2016-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-12
    • 2019-06-17
    相关资源
    最近更新 更多