gpt4 book ai didi

具有不同文件权限的git clone

转载 作者:太空狗 更新时间:2023-10-29 14:16:11 25 4
gpt4 key购买 nike

在我们的服务器上,三个(实际上:数千个)文本文件存储在一个裸 git 存储库中:A.txt、B.txt、C.txt。

  • 用户“admin”应该查看/编辑它们。
  • 用户“Foo”应该查看/编辑“A.txt”和“B.txt”,但不允许他查看“C.txt”的内容。
  • 只应允许用户“guest”查看/编辑“A.txt”。

所有三个用户都应该能够使用他们的文件克隆 git 存储库允许编辑。

有没有可能用 git(...或 mercurial)做这个?

想法:我可以使用稀疏 checkout 来克隆两个裸 git 存储库吗git 为用户“Foo”和“guest”提供的功能只包括他们的文件可以看吗?

还有其他(更快)的想法吗?

最佳答案

你应该:

  • 拥有三个分支
    • 访客(只有 A.txt 文件)
    • 用户(带有 A 和 B.txt 文件)
    • 管理员(包括所有文件)

这意味着频繁 merge 以更新不同的分支并传播不同的修改。

加上 gitolite ,您可以控制谁可以 pull/推什么(在分支级别),这意味着:

  • 访客只能 pull guest 分支。
  • foo 用户只能 pull guest 分支和 users 分支,同时能够推送 users 分支(或两个分支,如果您希望用户更新 guest 分支的内容)。
  • 管理员可以 pull/pull 所有分支。

关于具有不同文件权限的git clone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3513519/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com