gitlab中的repo删除特定commit

最近代码提交的时候发现一个问题

我有一些缓存代码,推送到gitlab上,分支已经push-f 了,但是其他用户还是可以通过commitid来访问代码。然后我尝试了:

  1. 通过 Web 界面(需要 Maintainer 权限)

    Settings → General Settings → Advanced → Run housekeeping

  2. 本地GIT操作

sh 复制代码
# 安装 git-filter-repo
pip3 install git-filter-repo

# 从历史中删除特定文件
git filter-repo --path <file-path> --invert-paths

# 或删除包含敏感信息的 commit
git filter-repo --commit-callback '
  if commit.original_id in [b"<commit-id-1>", b"<commit-id-2>"]:
    commit.skip()
'

# 强制推送所有分支
git push origin --force --all
git push origin --force --tags

发现都没有生效,特别是Web 界面,操作2次之后,会提示

Somebody already triggered housekeeping for this resource in the past 1440 minutes

看起来原因是:

  • housekeeping 是资源密集型操作(CPU、磁盘 I/O)
  • 频繁执行可能影响 GitLab 服务器性能
  • 防止误操作或恶意行为

默认限制:

  • 手动触发间隔: 24 小时
  • 自动触发周期: 每 1000 次推送

我等了差不多1天,但是发现代码还是可以访问,最后是删除了repo,重新创建并上传

复制代码
Settings → General Settings → Advanced → Delete this project
相关推荐
vpk1121 天前
Docker Compose 部署 GitLab
docker·容器·gitlab
Irene19912 天前
什么是 DevOps
gitlab·devops
蓝天星空2 天前
GitLab上传项目到新的分支
gitlab
1candobetter5 天前
GitLab 项目创建与分支管理全流程
gitlab
林鸿群6 天前
Ubuntu 26.04 本地安装 GitLab CE 完整教程(非 Docker 方式)
linux·ubuntu·gitlab·私有部署·代码托管·ubuntu 26.04·omnibus
ascarl20107 天前
IDEA 一直弹 GitLab 登录,VS Code 却能正常 `git push`?问题排查记录
git·gitlab·intellij-idea
企鹅郁金香9 天前
Gitlab和Confluence和Svn的备份
svn·gitlab·confluence·gitlab备份·svn备份·confluence备份
barbyQAQ9 天前
GitLab CI/CD 基本用法指南
java·ci/cd·gitlab
云中飞鸿10 天前
git、svn;TortoiseGit、TortoiseSVN;gitlab、github、bitbucket、bamboo有什么关系?
git·svn·gitlab