我不小心将文件推送到我的Github存储库,我试图了解它的位置。
我在这里看了很多帖子,但没有一个人有解决方案,所以我想问一下。
我的步骤是:
git status
git add normal_file.txt
git add sensitive_content_file.txt
git rm --cached sensitive_content_file.txt
#It was the time that I realized I have added a wrong file and need to remove it.
git commit -m "new changes"
git push
我看到它将"normal_file.txt "
推入我的存储库但是我没有在我的存储库中看到"sensitive_content_file.txt"
,所以我认为它没有被推送?那一切都好吗?
我试图清理缓存,但现在我的存储库抱怨为:
" Your branch and 'origin/master' have diverged, and have 1 and 1 different commit each, respectively."
但是,我没有对自己做任何改动。
如何在尝试删除缓存的情况下清除此文件的每个连接?
答案 0 :(得分:1)
git rm --cached sensitive_content_file.txt
足以将其推送到GitHub。
但是现在,最好将该文件添加到.gitignore中,以确保不会再错误地添加它:
echo sensitive_content_file.txt>>.gitignore
git add .gitignore
git commit -m "Ingore sensitive_content_file.txt"
git push
如果你做了任何rebase / commit --amend,那么与推送的相比,这会改变本地历史
如果您尚未进行任何本地修改,git reset --hard origin/master
将重置master,然后您可以修改.gitignore并推送。