Allow way to trigger `git reflog expire --expire=now --all && git gc --prune=now --aggressive` through UI.

Release notes

Sensitive information can be pushed to GitLab. Fully removing this information has proven hard or impossible to do. The commit related to the sensitive information can be still accessible when using the direct URL.

Although sensitive information that has been published online should be rotated. Having a way to delete this information is something our customers have requested multiple times.

See some sample request from customer (internal links):

  • zd-197014
  • zd-237022
  • zd-149657

Problem to solve

Allow customers to delete sensitive commits from GitLab.

Proposal

During testing, see git#142 (comment 1228225800), it was found that we need to execute git reflog expire --expire=now --all && git gc --prune=now --aggressive on the repository. We propose currently gc does not run wiht reflog exprie

We propose having a way to trigger this through UI, probably admin area for security, so that commits can be deleted. This will apply specifically to gitlab.com since for SM instances we can manually execute the command above.

Intended users

GitLab users that commited sensitive information to remote repository.

Feature Usage Metrics

This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.

Edited Jan 10, 2023 by Gerardo Gutierrez
Assignee Loading
Time tracking Loading