我想把我的项目推送到GitHub,但我发现在安卓文件夹中有一个名为java_pid14920.hprof的文件,大小约为300MB。
远程:错误:android/java_pid14920.hprof 文件的大小为301.75 MB;这超出了 GitHub 的文件大小限制(100.00 MB)。
我想知道删除这个文件是否安全?
我想把我的项目推送到GitHub,但我发现在安卓文件夹中有一个名为java_pid14920.hprof的文件,大小约为300MB。
远程:错误:android/java_pid14920.hprof 文件的大小为301.75 MB;这超出了 GitHub 的文件大小限制(100.00 MB)。
我想知道删除这个文件是否安全?
这里唯一的答案不适用于我,但我找到了一个解决方案。
我的错误文件是android/java_pid2325.hprof
,但你的可能会有所不同。 我使用了git filter-branch
:
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch android/java_pid2325.hprof'
确保将*.hprof
添加到您的.gitignore
并推送提交。
注意*-> 确保将 *.hprof 的名称更改为本地 *.hprof 的名称。
.gitignore
来忽略 *.hprof
文件。如果该文件不在最新提交中,则仅在该处删除它不会使您的代码库可以推送到 GitHub;您必须将对象从整个历史记录中删除。git log -- android/java_pid14920.hprof
),则可以执行 git rm android/java_pid14920.hprof
然后执行 git commit --fixup HASH-OF-COMMIT && GIT_SEQUENCE_EDITOR=true git rebase -ir --autosquash HASH-OF-COMMIT^
(注意插入符号)来删除该文件的提交记录。git filter-branch
或bfg
这样的工具来过滤出您不需要的大型对象。我运行了这个命令。它可以在Windows 10上正常工作。
git filter-branch -f --index-filter "git rm --cached --ignore-unmatch android/java_pid10213.hprof"
@bk2204 的答案对我有用。 在我的情况下,.hprof 文件在 android/hprof 目录中。
转到“.gitignore”文件
只需加入此代码片段。
android/
*.hprof
git clean -f
,
并尝试再次推送。
但是,我一直收到错误消息。
有什么解决方法吗? - sj_959我提交了两个hpprof文件; 因此,我只需运行这个命令,这些文件就会被成功删除。
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch android/java_pid21295.hprof android/java_pid16516.hprof'
这对我有用
git filter-branch -f --index-filter "git rm --cached --ignore-unmatch example/android/java_pid2243.hprof"
那么
git push -u origin main
example/android/java_pid2243.prof