文章目录
— 简洁版 ↓↓↓↓ —
$ rm -rf submodule/sub_project1
$ cd .git
$ vim config
输入i
进入-- INSERT --模式,在这个模式可以编辑文件内容
$ i
删掉 submodule 中sub_project1 的相关信息
按Esc
键盘,退出文本输入编辑模式
输入:
,再输入wq
退出 config 文件,
$ cd modules
$ rm -rf submodule/sub_project1
$ cd ../../submodule
$ git submodule add gitlab.xxx.com/xxx/sub_project1.git
如果add子模块,提示'sub_project1 already exists in the index'
,就要
$ git rm --cached sub_project1
Please stage your changes to .gitmodules or stash them to proceed
报错,删掉 .gitmodules 文件,并把修改记录添加到暂存区
$ cd ..
$ rm ./.gitmodules
$ git add .
$ cd submodule
$ git submodule add gitlab.xxx.com/xxx/sub_project1.git
— 简洁版完—
— 图文版 ↓↓↓↓ —
nuxt 项目,项目名:myProject
部分目录省略
- myProject
- .git
- assets
- pages
- submodule
- sub_project1
- sub_project2
- .gitmodules
- .gitignore
- nuxt.config.js
- ... ...
基于已安装git bash 的情况下,
打开myProject 文件夹所在位置,鼠标右键选择Git Bash Here
直接删掉submodule中的子模块,比如删掉sub_project1
$ rm -rf submodule/sub_project1
到.git文件夹下删掉所有相关的东西
$ cd .git
删除myProject/.git/config相关内容
$ vim config
输入i
进入-- INSERT --模式,在这个模式可以编辑文件内容
$ i
删掉submodule信息
按Esc
键盘,退出文本输入编辑模式
输入:
,再输入wq
退出 config 文件,
删除myProject/.git/modules相关内容
进入myProject/.git/modules目录,删除 sub_project1的相关数据,慎重!敲错容易误删!防止错误删除,可以到文件夹手动删除
。
$ cd modules
$ rm -rf submodule/sub_project1
回到submodule文件夹,git submodule add xxx(git仓库地址)
$ cd …/…/submodule
$ git submodule add gitlab.xxx.com/xxx/sub_project1.git
'sub_project1 already exists in the index'
报错,用 --cached
如果直接add子模块,提示'sub_project1 already exists in the index'
,就要
$ git rm --cached sub_project1
Please stage your changes to .gitmodules or stash them to proceed
报错,删掉 .gitmodules 文件,并把修改记录添加到暂存区
!
如果提示Please stage your changes to .gitmodules or stash them to proceed
,
直接删掉.gitmodules文件,并且把删掉 .gitmodules 的记录提交到仓库的暂存区中
,
否则每次添加 sub_project1子模块,都会提示 'sub_project1 already exists in the index'
返回上一层目录,删掉 .gitmodules 文件
$ cd …
$ rm ./.gitmodules
$ git add .
重新进入submodule,进行添加
$ cd submodule
$ git submodule add gitlab.xxx.com/xxx/sub_project1.git