gitlab处理空文件夹的提交或空文件夹提交失败

问题描述

厂家发给了我一个压缩包文件,压缩包解压之后本地编译没问题;推送到gitlab之后,再编译就报错了;

问题原因

经过分析之后发现,压缩包解压之后存在很多空文件夹;但是gitlab推送的时候,只会推送文件和对应的文件夹关系,不会推送一个空文件夹到服务器;

gitlab工具是依靠文件来识别文件夹的,不能识别空的文件, 默认不会跟踪空文件夹;

处理方法

我们可以在空文件夹下新建 .gitkeep 文件来保持文件夹的推送;

通过这条命令,可以确保当前目录及其子目录所有空文件夹中都有一个 .gitkeep 文件,从而让它们能够被 gitlab跟踪

bash 复制代码
find . -type d -empty -exec touch {}/.gitkeep \;

# 解释:
find .
# 在当前目录及其子目录中递归查找。
-type d
# 限制查找结果为"目录"。
-empty
# 匹配空的文件夹(没有文件或子文件夹的文件夹)。
-exec touch {}/.gitkeep \;
# 对于每个找到的空文件夹,执行 touch {}/.gitkeep 命令。
# {} 是 find 中的占位符,表示当前匹配到的目录路径。
# touch 命令用于创建一个空的 .gitkeep 文件。
相关推荐
第一程序员10 小时前
Python 4.0正式发布:新特性与学习建议
python·github
irpywp10 小时前
HolyClaude:一行命令,随时随地运行 Claude Code
开源·github·claude code
吴声子夜歌12 小时前
TypeScript——泛型
前端·git·typescript
春日见12 小时前
3三分彻底了解Git Graph极其应用
git
darkb1rd13 小时前
OpenSpace:让智能体低成本自进化与经验共享框架
开源·github·好物分享
风.foxwho14 小时前
jenkins使用 ED25519密钥 拉取Git 代码 配置
git·servlet·jenkins
ruanCat15 小时前
前端工程化工具链从零配置:simple-git-hooks + lint-staged + commitlint
前端·git·代码规范
木子小喵16 小时前
Git的使用介绍!超通俗!
git
coderYYY16 小时前
git push报错Authentication failed for ‘xxx’也不会弹要求输入用户名密码的最终解决方法
前端·git·gitee·github
@PHARAOH17 小时前
WHAT - git worktree 开发的并发模型
大数据·git·elasticsearch