今天在把項目push到GitHub時把node_modules
給傳上去了,因爲是新倉庫,配置時忘記把node_modules
加到.gitignore裏面去了。錯已鑄就,老老實實給刪掉吧。。。
-> cd reponame #進入本地克隆下來的倉庫文件夾 -> git pull origin master #拉取GitHub上的項目文件 -> git rm -r --cached node_modules #刪除之 # git rm file # 刪除文件
⚠️注意:這裏只會刪除GitHub倉庫上的node_modules
,並不會刪除本地文件夾裏的。html
若是報fatal: pathspec 'node_modules' did not match any files
這個錯誤,你得看一下是否是文件夾名字輸錯了或者是你進錯倉庫了。。node
-> git commit -m 'modify: Delete node_modules' #提交備註 -> git push -u origin master #push上去才完事兒,要注意
完事了,看一下有沒有刪除成功。git
有了刪除文件,也記一下上傳文件吧github
-> cd dirname #dirname是要項目下要上傳的文件夾名稱 -> git init -> git add -A #git add filename.file -> git commit -m 'modify: Update dirname'
Git中文件的狀態有兩種,已跟蹤(tracked)和未跟蹤(untracked),已跟蹤就是這個文件已經歸入版本控制。shell
對於修改(modify)的文件,因爲它以前已被提交,上次的修改內容被記錄了,因此它在已跟蹤(tracked)狀態。而對於新增的文件,它處於未跟蹤狀態,此時就須要將其歸入已跟蹤狀態,git add -A
會把文件夾下全部文件歸入已跟蹤狀態,將單個文件歸入跟蹤狀態需使用git add filename.file
。版本控制
-> git push -f git@github.com:USERNAME/REPONAME.git master
另外別忘了push,push完了才完事。code
git commit -m
與git commit -am
的區別,還有用了-am
還要不要使用git add
命令?看大佬文章。。htm
文章已發佈至個人博客,原文在此blog