为什么尽管使用Git LFS进行跟踪,但无法将大文件推送到GitHub?

bzzcjhmw  于 2023-09-29  发布在  Git
关注(0)|答案(1)|浏览(131)

我在尝试推送一个大文件(src/data/indonesia-cities.json,大小:139.64 MB)到GitHub。我知道GitHub有100 MB的文件大小限制,所以我尝试使用Git Large File Storage(Git LFS)来处理它。
采取的步骤:
1.安装Git LFS
1.已使用git lfs track "src/data/indonesia-cities.json"跟踪大文件
1.添加了.gitattributes并提交了更改。下面是我使用的命令序列:

git lfs install
git lfs track "src/data/indonesia-cities.json"
git add .gitattributes
git commit -m "Track large files with Git LFS"
git push

尽管遵循了这些步骤,但当我尝试推送到GitHub时,仍然会收到一条错误消息:

remote: error: File src/data/indonesia-cities.json is 139.64 MB; this exceeds GitHub's file size limit of 100.00 MB

我尝试过的:
1.取消跟踪文件并提交该更改。
1.使用Git LFS重新跟踪文件并提交更改。
1.强制推送以更新远程分支。这些步骤均未解决问题。我还是不能把大文件推出去。
如何解决这个问题,并使用Git LFS成功地将大文件推送到GitHub?

gwbalxhn

gwbalxhn1#

我使用Git LFS的migrate命令解决了这个问题。以下是解决问题的步骤:
步骤1:安装Git LFS首先,如果你还没有安装Git LFS,你可以使用以下命令:

git lfs install

第2步:使用git lfs migrate要将大文件移动到Git LFS中,请使用migrate命令,如下所示:

git lfs migrate import --include="src/data/indonesia-cities.json"

这将重写你的Git历史,将大文件移动到LFS。
第3步:添加并提交更改现在你应该暂存并提交.gitattributes文件和大文件本身:

git add .gitattributes src/data/indonesia-cities.json
git commit -m "Migrate large file to Git LFS"

步骤4:推送到远程仓库最后,将更改推送到远程仓库:

git push origin your-branch-name

注意:使用历史重写命令(如git lfs migrate)时要小心,尤其是在共享仓库上。请务必备份您的存储库,并通知您的协作者在此类更改后重新克隆。
来源:https://docs.github.com/en/repositories/working-with-files/managing-large-files/moving-a-file-in-your-repository-to-git-large-file-storage

相关问题