git - 单个 git 存储库的多个用户

标签 git gerrit git-worktree

我们有一个被多个用户使用的服务器。磁盘空间是一个很大的限制,因为我们的 git repo 非常大,每次有人克隆它时,它都会消耗 130G 的空间。
我知道 git 不是为集中式工作流而设计的,但这是一种非常特殊的情况。我们考虑过升级硬件,但这是一条很长的路,因为它不是云实例。
我试着摆弄 git worktree但我很快就遇到了权限问题。我的理想设置是一个单一的存储库,多个用户可以通过它推送和 pull 。
我查看了以前的线程,但不幸的是那里没有可靠的建议,它们是相当老的线程。因此,任何新的建议将不胜感激。

最佳答案

另一种方法是use git worktree , 以便在多个不同路径中 check out 多个分支,同时只保留一个克隆的存储库。
结合一些 partial clone with filter and sparse cone和:

  • 您的主存储库可能比现在小(因为您的集体工作不需要的一些文件被过滤了,并且因为没有获取完整的历史记录)
  • 无需再次克隆存储库即可 check out 您的不同分支。
  • 关于git - 单个 git 存储库的多个用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64953464/

    相关文章:

    git - 同时在同一个 git 目录上工作

    打开连续 PR 的 GitHub 工作流程

    git push -> 仅代码审查当前更改(remote.origin.push 覆盖 push.default)

    ssh - 如何为另一个用户生成 ssh key ?

    git - "git worktree"分支的长期使用

    Git:用链接的工作树交换主工作树?

    git - 如何让 Git 对初学者尽可能安全?

    git diff,没有新行,改变了什么?

    Eclipse 创建 git 仓库失败

    gerrit - 在Gerrit注释中的另一个列表内创建一个列表