栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在服务器上对Git分支进行重复数据删除

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在服务器上对Git分支进行重复数据删除

我决定这样做:

 shared-objects-database.git/foo.git/  objects/info/alternate (will have ../../shared-objects-database.git/objects)bar.git/  objects/info/alternate (will have ../../shared-objects-database.git/objects)baz.git/  objects/info/alternate (will have ../../shared-objects-database.git/objects)

所有分叉在其object / info / alternates文件中都有一个条目,该条目提供了到对象数据库存储库的相对路径。

使对象数据库成为存储库非常重要,因为我们可以保存具有相同名称的存储库的不同用户的对象和引用。

脚步:

  1. git init --bare shared-object-database.git
  2. 每当有任何推送(通过后接收)或运行cronjob时,我都会运行以下代码行
    for r in list-of-forksdo

(cd“ $ r” && git push ../shared-objects-database.git“ refs / :refs / remotes
/ $ r /
” && echo ../../shared-objects-database.git / objects>对象/ info /
alternates#要保存的代码每次完成时,我都将“ fat”对象添加到备用对象中

然后,在下一个“ git gc”中,将替代已存在的fork中的所有对象。

git repack -adl
也是一个选择!

这样,我们可以节省空间,以便两个用户在服务器上各自的分支上推送相同的数据将共享对象。

我们需要在共享对象数据库中将

gc.pruneExpire
变量设置为
never
。为了安全起见!

要偶尔修剪对象,请将所有派生作为远程对象添加到共享,提取和修剪中!Git会做剩下的!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/412423.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号