Git 对于 100,000 个对象来说确实很慢。有修复吗?

2023-12-08

我有一个“新鲜”的 git-svn 存储库(11.13 GB),其中包含超过 100,000 个对象。

我已经表演过

git fsck
git gc

初次结账后在仓库上。

然后我尝试做一个

git status

执行 git status 所需的时间介于 2m25.578s 和 2m53.901s 之间

我通过发出命令测试了 git status

time git status

5 次,所有时间都在上面列出的两次时间之间。

我是在 Mac OS X 上执行此操作,而不是通过虚拟机在本地执行此操作。

不可能需要这么长时间。

有任何想法吗?帮助?

Thanks.

Edit

我有一位同事坐在我旁边,拿着一个类似的盒子。更少的 RAM 并运行带有 jfs 文件系统的 Debian。他的git 状态在同一个存储库上运行 .3(它也是 git-svn checkout)。

另外,我最近更改了此文件夹的文件权限(更改为 777),这大大缩短了时间(为什么,我不知道)。我现在可以在 3 到 6 秒之间的任何时间完成它。这是可以管理的,但仍然是一个痛苦。


归结为我现在可以看到的几个项目。

  1. git gc --aggressive
  2. 开放文件权限777

一定还有其他事情发生,但这显然是产生最大影响的事情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Git 对于 100,000 个对象来说确实很慢。有修复吗? 的相关文章

  • Gitolite 与 LDAP 不工作

    我是 gitolite 的新手 我正在尝试用 gitolite 进行一个非常简单的测试 我已经设置了名为 test repo 的存储库 请注意 除了下面所述之外 我没有修改任何其他内容 我可以在 gitweb 中看到这个仓库 这是仓库配置
  • git log 不按时间顺序排列

    我在一个公共项目 B2G 又名 FirefosOS 上意外发现 git log 输出不是按时间顺序排列的 git clone https git mozilla org releases gecko git git log graph fo
  • 无法从 Git 扩展向 GitHub 进行身份验证?

    我只是在 Visual Studio 2010 中设置 Git 扩展 但无法真正使其工作 我无法进行身份验证 在 Git Extensions 中 如果我选择 Plugins gt GitHub 我可以添加用户 密码 API 令牌并选择 S
  • 应用程序中 GC 长时间暂停

    我当前运行的应用程序需要最大堆大小为 16GB 目前我使用以下标志来处理垃圾收集 XX UseParNewGC XX UseConcMarkSweepGC XX CMSInitiatingOccupancyFraction 50 XX Di
  • Git Push 远程:致命:包超出允许的最大大小

    我接到了一个大项目 客户想将其添加到github 我是一点一点添加的 然后发生的事情是我太贪心了 一次添加了太多文件 现在 无论我尝试什么 我都会不断收到此错误 我怎样才能解决这个问题 我试图回滚 但也许我做错了 git push Ente
  • 我可以将我的heroku git repo导入bitbucket吗?如何?

    我的笔记本电脑坏了 我需要从另一台计算机上编码 我正在使用 Heroku 我想将最新版本的代码从 Heroku 获取到另一台机器 据我了解 强烈建议使用 GitHub 或 BitBucket 获取适当的远程存储库 我决定尝试一下 BitBu
  • 如何使用 PyGithub 创建新存储库

    如何使用 PyGithub 在 Github 上创建新的存储库 我特别想知道如何使用create repo http jacquev6 net PyGithub v1 github objects AuthenticatedUser htm
  • 字节数组的快速位移 - CMAC 子键

    我需要尽可能快地实现 16 字节数组的左移JavaCard 我尝试了这段代码 private static final void rotateLeft final byte output final byte input short car
  • Azure Devops Pipeline YAML 中的 Git 标记名称

    Summary 如何获取 Azure Devops Pipeline YAML 文件中当前 git 标签的名称 我想做什么 我正在 Azure Devops 中设置构建管道 创建新的 git 标签时会触发管道 然后我想构建 docker 镜
  • VS2013 - GIT 不工作

    我最近安装了VS2013 每当我尝试使用 GIT 执行任何操作时 我都会在输出窗口中收到以下两条消息 libgit2 引发错误 类别 未知 错误 本机库未提供错误消息 该问题可能主要出现在远程存储库获取中 在克隆远程存储库之前 请打开远程
  • n的渐近增长选择下限(n/2)

    如何找到 n select Floor n 2 的渐近增长 我试过 使用扩展并得到它等于 n n 1 floor n 2 1 n floor n 2 知道我该如何从那里去吗 感谢任何帮助 更喜欢提示而不是答案 我同意上面的答案 但想提供更多
  • “git merge --squash”的正确用例是什么?

    有些人喜欢git merge squash由于以下原因 压缩到单个提交使您有机会清理混乱的 WIP 提交 并为您要合并的更改提供良好的理由 https coderwall com p qkrmjq git merge squash http
  • 合并多个 git 存储库

    假设我有一个看起来像这样的设置 phd code phd figures phd thesis 由于历史原因 这些都有自己的 git 存储库 但我想将它们合并为一个 以稍微简化事情 例如 现在我可能会进行两组更改 并且必须执行类似的操作 c
  • 读取大文件并制作字典

    我有一个大文件 我需要读取它并从中制作字典 我希望这一切能够尽可能快 然而我的Python代码太慢了 这是一个显示问题的最小示例 首先制作一些假数据 paste lt seq 20000000 lt seq 2 20000001 gt la
  • 在 git 中管理 schema.rb 的首选方法是什么?

    我不想添加schema rb to gitignore 因为我希望能够从该文件加载新的数据库架构 然而 保持检查状态会导致各种虚假冲突 而这些冲突很容易通过新的解决方案解决 db migrate reset 基本上我想要一种方法 将 sch
  • 如何列出未推送的 Git 提交(本地但不在源上)

    如何查看我所做的 尚未推送到远程存储库的任何本地提交 偶尔 git status将打印出我的分支是X提交之前origin master 但不总是 这是我安装的 Git 的错误 还是我遗漏了什么 这给出了 origin master 和 HE
  • GitHub - 指定时间的存储库状态

    我是使用 git 版本控制工具的初学者 我想在指定时间 例如 2013 年 10 月 5 日 下载存储库状态 文件 我怎样才能做到这一点 截至 2019 年 5 月 不确定何时引入 您可以简单地按以下格式添加日期 HEAD 2019 04
  • 公共领域还好吗?

    在你像我最初那样做出直觉反应之前 请阅读整个问题 我知道它们让你感觉很脏 我知道我们以前都被烧伤过 我知道这不是 好风格 但是公共场所可以吗 我正在开发一个相当大规模的工程应用程序 该应用程序创建并使用结构的内存模型 从高层建筑到桥梁再到棚
  • 警告:引用名称“xxx”不明确

    我想知道为什么我收到 refname is ambigeous 的警告 这是否意味着名称以该字符串开头的分支不超过两个 但这里没有 Thanks git checkout B03799 warning refname B03799 is a
  • 在 git 中记录前 10 个

    两个问题 如何从头到尾显示 git 中的前 10 个提交 无分行 如何指定提交索引并记录它 显示第二个或第三个 我知道 git 使用父级来链接提交 很容易从头到尾记录提交 喜欢 git log HEAD 10 但我需要从头到尾查询 可以吗

随机推荐

  • 使 div 跨越网格中的两行

    我有一页充满了块 其中堆积着display inline block 我想让一些大四到两倍 所以我用了float left or right放置其他块 我的问题是如果我有五元素行 我怎样才能放一个更大的元素在中间它的 作为float自然地放
  • 更新路径“x”会在“x”处产生冲突

    当我尝试更新 upsert 项目时发生此错误 Updating the path x would create a conflict at x 字段应出现在 set or in setOnInsert 两者都没有
  • 在 Xcode 4 中重命名项目

    我一定错过了一些明显的东西 但我不知道如何在 Xcode 4 中重命名我的项目 如果我没记错的话 Xcode 3 有一个专门的菜单项 但 Xcode 4 中没有这样的条目 好吧 事实证明这确实是一件小事 您所需要做的就是点击两次slowly
  • 如何根据负载在kubernetes中自动缩放elasticsearch?

    我正在使用 Google Cloud 正在做 RnD 是否可以申请HPAKubernetes 中 Elasticsearch 上的 水平 Pod 自动缩放 I did elasticsearch设置于Kubernetes https git
  • 如何在 Windows 上的 Anaconda Python 中安装 Keras 和 Theano?

    我正在尝试使用以下 Keras 包在 Python 中处理神经网络 from keras utils import np utils from keras layers core import Dense Activation Dropou
  • 通用方法不适用于“int”类型变量?

    我在使用两个变量时遇到了一些麻烦 int 和 Integer 它们大致相同 但是 如下面的代码所示 它们的行为并不总是相同 这是我的问题 这段代码运行得非常完美 我创建了一个通用方法 printArray 它需要任何类型变量的数组 因为它是
  • 为什么不能降低 Java 子类中方法的可见性?

    当您在子类中重写方法时降低方法的可见性时 为什么编译器会给出错误消息 因为子类的每个实例仍然需要是基类的有效实例 请参阅里氏替换原则 如果子类突然丢失了基类的一个属性 例如 即公共方法 那么它将不再是基类的有效替代品
  • 将活动工作表以 PDF 形式发送到单元格中列出的电子邮件

    我正在尝试使用下面的脚本将 Google 表格文档中的第一张工作表以 PDF 形式发送到电子邮件 要发送到的电子邮件地址列在单元格 A1 中 但是 此脚本将整个电子表格作为 PDF 发送 而不仅仅是第一个工作表 我一直在尝试使用 Stack
  • 为什么我一直收到 .addEventListener is not a function? [复制]

    这个问题在这里已经有答案了 因此 我正在使用 JW Player 除了我正在开发的一项功能外 一切都运行良好 当我运行代码时 我收到控制台错误 未捕获的类型错误 upTop addEventListener 不是函数n 这是代码 var u
  • .NET Framework、CLR 和 Visual Studio 版本号如何相互关联?

    随着最近发布的 NET 4 0 和 Visual Studio 2010 跟踪哪些 NET Framework 版本基于哪个版本的 CLR 构建以及属于哪个版本的 Visual Studio 变得越来越困难 是否有一个明确的表格显示这些关系
  • 将值从 EditText 传递到 TextView

    我想从一个页面的 EditText 中获取值 并将该值显示到另一页面的 TextView 中 我怎样才能做到这一点 如何在 EditText 中存储值 请帮我 感谢您 当您提到 在不同页面上 时 您的意思是在新活动中 对吧 假设这就是您的意
  • 通过 cmd Nodejs 安装 Phonegap 问题 [windows 7]

    我正在尝试使用cmd安装phonegap npm install gphonegap 但它没有安装并给我安装失败消息我粘贴了下面的cmd消息 那么我如何设置代理设置 假设这就是问题 nodejs可以使用它来连接到互联网并完成phonegap
  • 如何使用 SqlCommand 参数指定选择查询的架构名称

    我们数据库中的架构名称是动态的 为什么以下不起作用 public void ReadVersion string connString string schemaName string selectCommand SELECT major
  • apache zeppelin 附加存储库导入

    如何在 zeppelin 中导入附加依赖项 我正在尝试在 apache zeppelin 中导入库 鞍座 但是 import org saddle
  • Ruby 中的 !~ 方法对 String 有何作用

    来自 sawa的回答 https stackoverflow com a 21892359 226255 什么是 do Example re d 0 0687987167581341 0 120311605902415 89 8399554
  • 定义具有相同名称的 git 别名以隐藏原始命令

    我试图使用与现有命令相同的别名作为别名 以便别名隐藏原始命令 防止我从工作树中删除文件 alias rm rm cached diff diff color 不幸的是 这不起作用 有人知道解决方法吗 谢谢 Edit环境color diff
  • 什么时候a>a为真?

    是的 我想我真的是在做梦 我在 AIX 机器上编译并运行了以下代码 AIX 3 5 PowerPC POWER5 processor type IBM XL C C for AIX V10 1 Version 10 01 0000 0003
  • ggplot2:使线上的点的颜色比线的颜色更深

    我想让图表上的每个点的颜色与线条不同 这是示例数据 df lt structure list yrmonth structure c 17167 17167 17167 17198 17198 17198 17226 17226 17226
  • 如何自定义平视通知布局?

    在我的项目中 需要更改平视通知布局 我定制了两个remoteView 一个用于Notification contentView 一个用于Notification bigContentView并成功了 当我想使用时Notification B
  • Git 对于 100,000 个对象来说确实很慢。有修复吗?

    我有一个 新鲜 的 git svn 存储库 11 13 GB 其中包含超过 100 000 个对象 我已经表演过 git fsck git gc 初次结账后在仓库上 然后我尝试做一个 git status 执行 git status 所需的