拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

已经把 node_modules 提交并推送到 Gitee,怎么删掉(本地 + 远程仓库)

已经把 node_modules 提交并推送到 Gitee,怎么删掉(本地 + 远程仓库)

问题:已经把 node_modules 提交并推送到 Gitee,怎么删掉(本地+远程仓库)

node_modules 一般不要提交,体积巨大,需要加入.gitignore

1. 先添加 .gitignore(防止以后再误提交)

在项目根目录新建/编辑.gitignore,写入:

node_modules/

2. 从git仓库索引删除 node_modules(保留本地文件,只从版本库移除)

打开终端,项目根目录执行:

gitrm-r--cachednode_modules

--cached很关键:不会删除你电脑本地的 node_modules 文件夹,只从git记录里删掉
如果不加--cached,本地node_modules会直接被删掉,需要重新npm install

3. 提交这次删除记录

gitadd.gitcommit-m"remove node_modules from git tracking, add .gitignore"

4. 推送到 Gitee 远程仓库

gitpush

✅ 做完上面几步:

  • 远程Gitee仓库里的 node_modules 目录就被删掉了
  • 以后git不会再追踪node_modules,不会再误上传

⚠️ 特殊情况:如果想彻底抹除历史提交里的node_modules(仓库体积很大时)

上面方法只是新增一次删除提交,旧的历史提交里还保存着node_modules,仓库大小不会变小。
如果你仓库已经非常臃肿,需要清除历史,用下面这个(风险高,团队多人协作不要随便用!会改写git历史,其他人需要重新克隆)

gitfilter-branch--force--index-filter"git rm -r --cached --ignore-unmatch node_modules"--prune-empty --tag-name-filtercat----all# 强制推送到远程gitpush origin--force--all

检查是否生效

gitstatus

看输出,node_modules 不再显示在待提交列表里。

补充:多人协作注意

如果是多人项目,尽量不要用 filter-branch 改写历史,优先用第一种简单方案(新增提交删除),避免队友本地git历史冲突。

返回列表