繁体   English   中英

如何使用 GIT 作为文档版本控制系统 - 多个并发用户

[英]How to use GIT as document versioning system - muitiple concurrent users

我想管理一些纯 JSON 文本的版本控制,而 GIT 似乎是一个不错的解决方案

我们将拥有不同的用户,连接到一个Web应用程序,他们每个人都有自己的私人“工作区”信息,这些信息可以保存为JSON。 我计划给每个工作区一个 Id,每次用户更改和保存某些内容时,它都会被提交(通过在服务器上触发 GIT 命令)。

将有一个 GIT 用户,访问控制仅由 Web 应用程序管理。 我想问一下 GIT 是否是适合这项工作的正确工具/生产。 这种方法应该做什么,应该避免什么。

使用 Git 绝对可以解决您的问题。 我的建议是你漂亮地打印你的文档,这样每个条目都是一行,如下所示:

{
    "a": 1,
    "b": [
         "x",
         "y",
         "z"
         ]
}

这将有助于减少任何冲突,以防您将来决定要将多个分支合并在一起。 如果您尝试进行合并,将文档全部放在一行上会导致合并冲突。

此外,我建议使用 libgit2 或其包装器之一添加提交。 这意味着您无需担心工作树中的争用,尽管您可能仍需要序列化访问以更新引用。 它也可能会更高效,因为您不需要分叉额外的进程。

如果您的方案不需要保留旧版本,或者不需要永远保留每个版本,您可能需要使用数据库而不是 Git 并在需要时存储一些旧版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM