我犯了一个错误,并误输入了.gitignore文件的名称,当我将其推到Github时,我意识到我也在推销node_modules
目录中的所有内容。我取消了命令(ctrl + c)并修复了.gitignore并运行git rm -r --cached .
。
运行git status
然后仅显示对.gitignore文件的更改,因此我提交了它们,然后何时向上推。但是,在git push
期间,我注意到node_module
文件仍在上推。
同样,我取消了命令(ctrl + c)并运行git reset --hard HEAD^
,重新添加并重新提交,但是似乎我又在推送node_module
文件。
因为我在这些文件中途取消了推送,所以似乎陷入了困境。
是否可以通过某种方式解决此问题,以便可以合并到github而无需增加我的node_module
文件?
答案 0 :(得分:1)
.gitignore
适用于尚未add
编辑的文件,但不适用于已被跟踪的文件。
您可能必须使用git filter-branch
至remove those files from your Git local history。
在那之后,因为您已经修改了历史记录,所以需要强行推入。
答案 1 :(得分:0)
.gitignore不适用于已经推送(在分支内)的文件或文件夹; 直接在回购中编辑git ignore,删除文件,然后拉到本地; 删除本地文件