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 文件。
相关推荐
Dontla几秒前
.gitkeep文件作用(让Git追踪空目录,使该目录能被纳入版本控制)!.gitkeep
大数据·git·elasticsearch
AdCj32 分钟前
GitHub 日榜速递 (2026-06-08):AI 基础设施正在“下沉“
人工智能·github·agent
shandianchengzi5 分钟前
【记录】VSCode|Windows 下 VS Code 配置 Git Bash 为默认终端完整教程
windows·git·vscode·bash
EleganceJiaBao14 分钟前
【Git】现代开发工作流(Main + Feature Branch)
git·github
小怪不太怪~16 分钟前
本地项目上传到GitHub--小怪教程(Git Bash实操+常见报错解决
git·github·bash
_codemonster11 小时前
git 容易混淆的点
git
Electrolux12 小时前
[onlyoffice-v9]纯前端怎么实现编辑预览office
前端·javascript·github
用户0747407816514 小时前
rust-bindgen:让 Rust 调用 C 库变成一行命令的事
github
_codemonster14 小时前
Git 最常用操作和原理
大数据·git·elasticsearch
momo在敲码14 小时前
Claude Sub-agents 完整可跑代码:3 个 design pattern + omni-report 真实编排(45 min → 8 min
人工智能·github