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 文件。
相关推荐
风禾万里5 小时前
Git怎么管理软件版本(代码,模型,配置等)
git
水电费嘎嘎6 小时前
Claude Code接入Github
github·claude code
默默coding的程序猿7 小时前
3.git的分支携带问题是什么?怎么解决?
java·git·python·svn·gitee·github·intellij-idea
天地人-神君11 小时前
将.idea取消git托管
java·git·intellij-idea
Zach_yuan14 小时前
版本控制器Git
linux·git
爱宇阳18 小时前
Linux 教程:如何查看服务器当前目录中的文件
linux·运维·github
CoderJia程序员甲19 小时前
GitHub 热榜项目 - 日榜(2025-10-17)
ai·llm·github·开源项目·github热榜
绝无仅有19 小时前
面试真实经历某商银行大厂数据库MYSQL问题和答案总结(一)
后端·面试·github
绝无仅有19 小时前
Docker 实战经验之关键文件误删恢复指南
后端·面试·github
Sirens.19 小时前
Java核心概念:抽象类、接口、Object类深度剖析
java·开发语言·github