将代码从 Gerrit 移动到 Github 时遇到“这超过 GitHub 的文件大小限制 100.00 MB”错误
Facing " this exceeds GitHub's file size limit of 100.00 MB" error while moving code from Gerrit to Github
我正在按照 here 提供的说明将所有项目从 Gerrit 转移到 Git hub。
推送时出现以下错误
git push <git url> --all
Counting objects: 383567, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (125080/125080), done.
Writing objects: 100% (383567/383567), 647.42 MiB | 7.05 MiB/s, done.
Total 383567 (delta 249729), reused 383559 (delta 249723)
remote: Resolving deltas: 100% (249729/249729), done.
remote: Checking connectivity: 383567, done.
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
remote: error: Trace: 213456sdfggdas123refsdaw
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File aclocal.m4 is 147.07 MB; this exceeds GitHub's file size limit of 100.00 MB
整个存储库中没有文件超过 1 MB,该特定文件约为 45KB。
该项目大约有 40 个分支,并且变化非常频繁。
如何克服这个问题?如果我只安装 Git Large File Storage 并尝试推送,它会工作吗?
我不能删除历史记录
错误消息告诉您 在您的历史记录 中的文件太大 (aclocal.m4 is 147.07 MB
)。
如果您绝对想在 GitHub 上推送您的历史记录,您只有 2 个选项(将修改您的历史记录):
- 如果文件不需要并且是错误提交的,您可以重写它以删除该文件。
- 或者您确实可以使用
git lfs migrate
将所有存储库(和您的历史记录)转换为 "Git Large File Storage"。不只是安装它...
对于您的情况,如果“aclocal.m4”文件是唯一具有“.m4”扩展名的文件,那么它应该足够了:
git filter-branch --index-filter 'git rm --cached --ignore-unmatch *.m4'
git push
我正在按照 here 提供的说明将所有项目从 Gerrit 转移到 Git hub。
推送时出现以下错误
git push <git url> --all
Counting objects: 383567, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (125080/125080), done.
Writing objects: 100% (383567/383567), 647.42 MiB | 7.05 MiB/s, done.
Total 383567 (delta 249729), reused 383559 (delta 249723)
remote: Resolving deltas: 100% (249729/249729), done.
remote: Checking connectivity: 383567, done.
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
remote: error: Trace: 213456sdfggdas123refsdaw
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File aclocal.m4 is 147.07 MB; this exceeds GitHub's file size limit of 100.00 MB
整个存储库中没有文件超过 1 MB,该特定文件约为 45KB。 该项目大约有 40 个分支,并且变化非常频繁。
如何克服这个问题?如果我只安装 Git Large File Storage 并尝试推送,它会工作吗?
我不能删除历史记录
错误消息告诉您 在您的历史记录 中的文件太大 (aclocal.m4 is 147.07 MB
)。
如果您绝对想在 GitHub 上推送您的历史记录,您只有 2 个选项(将修改您的历史记录):
- 如果文件不需要并且是错误提交的,您可以重写它以删除该文件。
- 或者您确实可以使用
git lfs migrate
将所有存储库(和您的历史记录)转换为 "Git Large File Storage"。不只是安装它...
对于您的情况,如果“aclocal.m4”文件是唯一具有“.m4”扩展名的文件,那么它应该足够了:
git filter-branch --index-filter 'git rm --cached --ignore-unmatch *.m4'
git push