如何唯一地标记文件及其';是各种版本的吗

本文关键字:版本 唯一 何唯一 文件 | 更新日期: 2023-09-27 18:01:06

我正在开发一个小型应用程序,允许我在每次更改之前修改文件并对每个文件进行版本设置。我希望该应用程序对每个文件进行唯一标记,这样无论何时打开同一个文件,都可以备份该特定文件的历史记录。我没有为此使用任何大型版本控制工具。请问我该如何按语法进行?

如何唯一地标记文件及其';是各种版本的吗

简单的解决方案。使用一个已经存在的verison控件(例如Git(,但如果你真的想这样做,那就试试这个。

每次创建新版本时,都会将文件的前一版本复制到一个单独的隐藏目录中,并在该目录中有一个配置文件,其中包含该文件的校验和。校验和"很可能"是唯一的,因为它是文件的哈希值(每次文件更改,校验和都会不同——你需要自己计算校验和。(

打开文件时,只需检查目录中是否有该配置文件,并将校验和与已打开文件的校验和进行比较。如果它们是相同的,那么你就在同一个文件上。这就是它的工作原理。

你可以使用校验和来优化它。所以,如果用户进入一个文件,就会更改内容,更改回原来的样子并保存。校验和应该返回相同的东西(除非你包括修改的日期和时间等(

每个文件夹都应该有一个遵循模式的名称(filenameVn.n,例如someTextFile.txt.v.0(,然后你就可以弄清楚历史记录中导航到的目录应该是什么。

另一种方法是简单地复制文件并在文件末尾附加一些标记(可能是校验和?版本号?(,这样就不需要额外的文件夹了。

另一种方法是,无论校验和记录什么,都要调用文件,并将版本的历史记录(以及相应的校验和(存储在一个单独的配置文件中,然后在您想知道要访问的文件被调用时引用它。因此,每个版本都会根据自己的校验和进行引用(就像Git中一样(

因此,为了总结每个文件版本将存储在某个地方,您将能够验证它们是否相同(因此,您可以通过避免存储多个文件而不进行更改和浪费空间来进行优化(,并且您将能够动态确定每个版本的位置并访问它。

希望它能让你对如何开始有更多的了解。