Linux文件版本控制?


11

我们正在从VMS环境迁移到Linux环境,以淘汰一些旧的Alpha服务器。我无法克服的一个挑战是文件版本控制。VMS使用版本标志保留同一文件的多个副本。我在Source Forge上找到了多个选项,但是我还没有找到在主要生产环境中有任何经验的人。之所以需要这样做,是因为其他系统的提要没有考虑唯一的文件名。我们正在努力使我们的范围尽可能轻。

任何帮助是极大的赞赏。

似乎可用的2个主要选项是:

  • 回溯
  • EtcKeeper-不确定是否只能将其应用于一个或多个目录。

有没有人在企业环境中使用过这些?我还应该考虑其他选择吗?


不确定etckeeper是否可以做到,它需要有人告诉它提交。除非有一个保险丝文件系统。保险丝允许用户空间文件系统,并且由于存在许多这样的系统,因此可以使用某些覆盖系统,例如修订控制。因此值得在可用的保险丝文件系统中进行搜索。
ctrl-alt-delor

Answers:


3

如果您绝对确定仍需要此功能,那么我将研究一个实际的版本控制文件系统。其中大多数内容在Wikipedia上进行了介绍,标题为:Versioning file system。这是该文章针对Linux的选项列表。

摘抄

没有主流的Linux文件系统支持版本控制,但是许多实验性/研究性和鲜为人知的解决方案都支持:


2

您可以使用copyfs在文件层次结构中提供文件的系统版本控制。Copyfs保留所有文件的所有版本。它使用您选择的基础文件系统来存储文件内容。

Etckeeper不是正确的工具。它是版本控制系统之上的一层,旨在更好地处理系统配置文件目录(/etc)。根据您的要求,您可能可以使用版本控制系统,例如subversion,git,mercurial等。如果您可以在工作流程中每当出现新版本的文件时插入提交操作,这些功能就很有用。

另一种方法可能是在文件进入时对其进行重命名或移动。Linux提供了inotify工具来对文件系统事件(例如文件的创建或关闭)做出反应。


copyfs网站说它没有维护。
ivo Welch'3

2

在问了这个问题后的几年内,据我所知,上面列出的版本控制文件系统都没有得到积极开发或维护(如果有错,很高兴予以纠正)。现状似乎是服务器/云备份,并将版本控制保留在服务器应用程序中。对于我的备份问题,我认为这是有道理的:它将非现场备份,版本控制和大容量存储成本的问题汇总到一个解决方案中。在您自己的文件系统上占用大量空间的每个文档都拥有多个版本不再有意义。

对于轻负载(小文件),Github具有计划的提交或自动提交功能。

对于更大的事情,github有帮助地指出

Git的设计不足以充当备份工具。但是,有许多专门用于执行备份的解决方案值得一试,包括Arq,Carbonite,Mozy和CrashPlan。

在我撰写本文时,推荐的CrashPlan和Mozy中有适用于Linux的应用程序。两者都支持版本控制,但是在购买前请检查时间限制。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.