我将本地存储库推送到GitHub。在提交我的代码的过程中,我忘了创建一个.gitignore
文件。结果,我已经提交并随后在GitHub上(或在我的本地存储库中)推送了一些我不想要的文件夹和文件。
我现在如何申请.gitignore
,以便我可以删除一些不受欢迎的文件夹和文件?
答案 0 :(得分:6)
您可以git rm <unnecessary file and folder names>
然后将它们添加到您的.gitignore
文件中,这将从提交中删除它们。问题是,除非您更改先前的提交,否则它们将保留在历史记录中。如果这些文件中没有敏感数据,我会说保留历史记录。如果您需要从存储库历史记录中删除敏感数据,请参阅GitHub's help article on the subject
答案 1 :(得分:3)
首先,删除意外添加到仓库的bin
目录。你可以在这里参考:
http://help.github.com/remove-sensitive-data/
然后添加.gitignore
并提交,然后推送到github。
答案 2 :(得分:2)
从内存中你必须删除它并重新添加它。 Git ignore将生效。
答案 3 :(得分:2)
如果这是您的私人回购并且尚未发布,请使用filter-branch
修改历史记录:
git filter-branch --index-filter '
git rm -r --cached --ignore-unmatched bin;
' --all
然后,添加/修改您的.gitignore
文件:
>> .gitignore echo bin
git add .gitignore
git commit -m 'add gitignore files'
由于您已经发布了历史记录,因此最好不要重写它。只需删除bin目录并添加.gitignore文件
git rm -r bin
# add .gitignore
git commit -m 'remove and ignore bin folder'