- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有大文件并尝试使用新的 Git LFS 系统。
我发布了这个问题 - Git lfs - "this exceeds GitHub's file size limit of 100.00 MB"
Edward Thomson 正确地识别了我的问题 - 您不能追溯使用 LFS。他建议我使用 BFG LFS support
这在一定程度上起到了作用。我的绝大多数文件是变了。但是,有未更改的 protected 提交。
在这些 protected 提交中,有些超过 100.00MB,因此导致来自 github 的 remote:error
Protected commits
-----------------
These are your protected commits, and so their contents will NOT be altered:
* commit c7cd871b (protected by 'HEAD') - contains 165 dirty files :
- Directions_api/Applications/LTDS/Cycling/Leisure/l__cyc.csv (147.3 KB)
- Directions_api/Applications/LTDS/Cycling/Work/w_cyc.csv (434.0 KB)
- ...
WARNING: The dirty content above may be removed from other commits, but as
the *protected* commits still use it, it will STILL exist in your repository.
If you *really* want this content gone, make a manual commit that removes it,
and then run the BFG on a fresh copy of your repo.
首先 - 有人可以解释为什么这些提交受到保护并且与 BFG 成功更改的提交不同吗?
其次 - 我怎样才能解除这些保护并允许 BFG 编辑它们,从而使我能够正确使用 LFS 并最终成功推送到 GitHub
最佳答案
BFG 最初是作为一种工具创建的,用于销毁 深埋在 Git 历史中的不需要的数据(大文件、密码)。 BFG 运行后数据将消失,并且程序通常需要调整以处理不再直接可用的数据(即必须更改它们以从环境变量中读取密码,或下载大依赖)。调整程序来处理这些变化并不是一个可以轻松实现自动化的步骤 - 人类需要更新代码来应对这种变化!
我决定默认假设项目是“改革的”——他们在过去犯过错误,但当用户开始发现 BFG 时,他们已经意识到他们的错误并且至少会清理更新他们最新的提交(即他们已经提交删除不需要的数据,作为解决问题的第一步)。因此,对于 BFG 来说,不更改最新提交是更安全 - 另一种选择是 BFG 盲目地踩踏历史上的所有内容,包括项目的最新版本,并且实际上 破坏 尚未准备好处理从 env 变量等读取密码的软件。
可以通过添加 --no-blob-protection
标志来禁用此行为,例如:
$ java -jar ~/bfg-1.12.7.jar --convert-to-git-lfs '*.{exe,dll}' --no-blob-protection
我计划更新 BFG 以在 --convert-to-git-lfs
是唯一的操作时隐式使用 --no-blob-protection
标志已执行 - 因为这不再是真正的破坏性操作。
完全披露:我是 BFG Repo-Cleaner 的作者。
关于Git BFG 追溯启用 LFS - protected 提交问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33671523/
在我的 chrome 控制台中,我试图了解导致调用某些 javascript 的步骤是什么文件。实际上,当我在单击输入文件标签后从我的计算机导入文件时,会调用一些 javascript 文件,但我不知
最近,我在 Kali Linux 中使用了 wifi phisher 工具。当我在列表中输入 AP 数量时,我在终端中得到以下跟踪: Traceback (most recent call last)
我叫米奇。以前,我在堆栈交换方面的数学和物理方面获得了惊人的帮助。我认为溢出是相关的,但我意识到我应该将这个问题放在一个问题上。我已经尝试了很多次,以尝试向自己介绍编程知识,特别是python,阅读全
我们内部开发了大约七个不同的网站。它们是跟踪不同人力资源申请并帮助我们的一些员工通过日程安排完成工作的网站。今天,首席软件设计师告诉我开始使用 phpUnit 为我们现有的代码编写测试用例。我们的主网
这是我的问题: 我使用 Subversion 有一段时间,直到我切换到 Git。又过了一些时间。 没有将历史从 Subversion 导入到 Git。这是一个严格的检查,删除 .svn 目录,然后是
我的目标是在这个gmail gem中找到调用save_attachments_to的地方自述文件示例: folder = "/where/ever" gmail.mailbox("Faxes").em
我在运行 C++ 应用程序时遇到段错误。在 gdb 中,它以某种方式显示我的一个指针位置已损坏。但是我在申请期间创建了 10 万个这样的对象指针。我怎样才能看到导致崩溃的一个我可以在 bt 命令中执行
我现在正在 BigQuery 中设置 GA4/Firebase 并使用 dbt在它之上进行分析。 由于这两个源的数据非常大,我想激活增量加载,只更新今天+昨天的分析模型(而不是每次都完全刷新所有数据)
我正在使用 React Redux。我的代码中的值似乎被覆盖了。我的已连接 (mapStateTo...) 组件的 this.props 来 self 的代码的未知部分。 我的任务直接链接到另一个关于
我一直在学习 Python 并从互联网上获取不同的东西并将它们全部放入我正在制作的这个游戏中:“你醒来......”这是一个基于文本的 assci RPG(滚动游戏)。它一直有效,直到出现此错误: T
上下文 由于使用 numpy.ma 模块进行掩码比直接 bool 掩码慢得多,因此我必须将后者用于我的 argmin/argmax-计算。 一点比较: import numpy as np # Mas
我在 Visual Studio 2013 中使用 asp.net mvc 迈出了第一步,但遇到了一个奇怪的问题。 我以 MVC 的形式开始了我的项目,并且没有选中“Web API”框来包含核心引用。
我是一名优秀的程序员,十分优秀!