1 .gitignore不生效
.gitignore只能忽略原来没有被跟踪的文件,因此跟踪过的文件是无法被忽略的。因此在网页上可以看到target等目录的存在。
解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
2. git中修改文件或文件夹的大小写
步骤1:将文件或文件夹更改为新的大小写
步骤2:从Git中清除现有文件或文件夹的跟踪状态
步骤3:将更改后的文件或文件夹添加到Git中
mv src.h Src.h
git rm -r --cached src.h
git add Src.h
3. git添加删除子模块
添加子模块:
使用 git submodule add 命令,指定子模块仓库的URL和存放路径:
git submodule add https://gitee.com/xia-chu/ZLToolKit 3rdpart/ZLToolkit
提交主仓库的变更
git commit -m "添加子模块:3rdpart/ZLToolkit"
拉取子模块最新代码:
cd 3rdpart/ZLToolkit
git pull origin main
主仓库同步更新:
cd ..
git add path/to/submodule
git commit -m "更新子模块到最新版本"
其他用户克隆主仓库后,需初始化并更新子模块:
git submodule update --init
删除子模块
编辑 .gitmodules 文件,删除对应的子模块配置块
从 Git 配置中注销子模块:
# 移除暂存区中的子模块记录
git rm --cached 3rdpart/ZLToolkit
删除子模块的物理目录
rm -rf 3rdpart/ZLToolkit
删除 Git 内部缓存
rm -rf .git/3rdpart/ZLToolkit
提交变更
git add .gitmodules
git commit -m "删除子模块"