【Git】删除GitHub中的某个文件夹以及Git常用命令

3,104 阅读2分钟

今天在把项目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,并不会删除本地文件夹里的。

如果报fatal: pathspec 'node_modules' did not match any files这个错误,你得看一下是不是文件夹名字输错了或者是你进错仓库了。。

-> git commit -m 'modify: Delete node_modules' #提交备注
-> git push -u origin master #push上去才完事儿,要注意

完事了,看一下有没有删除成功。

二、上传文件

有了删除文件,也记一下上传文件吧

-> cd dirname #dirname是要项目下要上传的文件夹名称
-> git init

-> git add -A #git add filename.file
-> git commit -m 'modify: Update dirname'

Git中文件的状态有两种,已跟踪(tracked)未跟踪(untracked),已跟踪就是这个文件已经纳入版本控制

对于修改(modify)的文件,由于它之前已被提交,上次的修改内容被记录了,所以它在已跟踪(tracked)状态。而对于新增的文件,它处于未跟踪状态,此时就需要将其纳入已跟踪状态,git add -A会把文件夹下所有文件纳入已跟踪状态,将单个文件纳入跟踪状态需使用git add filename.file

-> git push -f git@github.com:USERNAME/REPONAME.git master

另外别忘了push,push完了才完事。

git commit -mgit commit -am的区别,还有用了-am还要不要使用git add命令?看大佬文章。。

文章已发布至我的博客,原文在此