Merge 自定义目录/文件夹合并工具

Merge 自定义目录/文件夹合并工具,merge,ocaml,ripemd,Merge,Ocaml,Ripemd,我正在考虑开发一个定制的目录/文件夹合并工具,作为学习函数式编程的一部分,同时也是为了解决一个非常个人的难题 我通常在三台不同的计算机上工作,我倾向于在本地积累大量文件(文本、视频、音频),然后煞费苦心地将它们合并以进行备份。我很确定我有重复和不需要的文件,浪费空间。我将使用云备份解决方案作为辅助备份源,我希望通过消除冗余文件尽可能节省空间 我有一个复杂的深度嵌套的目录结构,我想要一个自动化的工具,自动走下文件夹树并执行合并。另一个问题是我混合使用Linux和Windows,我的许多文件的名称中

我正在考虑开发一个定制的目录/文件夹合并工具,作为学习函数式编程的一部分,同时也是为了解决一个非常个人的难题

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

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

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

哪个函数式编程环境附带了一组现成的库来生成这些散列?我倾向于OCaml…

请查看

我自己并不使用它,但我听到了不少积极的评价。这是一个成熟的软件,有一定的理论基础。
而且,它是用OCaml编写的。

你为什么要发明轮子。git和github呢?git不能很好地处理大型二进制文件。但您可以尝试git和git附件或类似的git附加软件。不确定这是否适合您的用例。