我正在使用一个大型文本文件,该文件超出了git允许的最大允许文件大小,因此不允许我将本地提交推送到远程。我尝试创建.gitignore文件并将文件的路径添加到其中,但是仍然遇到相同的问题。
我也尝试过:
git rm -r --cached .
git add .
git commit -m "message"
git push
以及:
git update-index --assume-unchanged <path/to/file>
我什至删除了文件,然后重新提交并推送:
git add .
git commit -m "message"
git push
但是git仍然认为我正在尝试推送大型文本文件。我很困惑如何从git取消跟踪文件。
注意:git rm --cached
仅从索引而不是从存储库中撤出。
文本文件已经在上一次提交中注册。即使您尝试使用新的提交修改存储库,旧的提交仍然存在。 Git仍将尝试将其推入。
因此,您需要编辑此先前的提交并删除其中注册的文件。您必须重写提交的历史记录:git rebase -i specific-commit-id
将是您的朋友。此时,您可以使用git rm --cached
删除此提交中的大文本文件。然后git commit
进行更新。