极狐 GitLab

数据删除指南

为了最大限度地降低意外数据丢失的风险,极狐GitLab 提供了在代码库中安全使用删除操作的指南。

通常,有两种删除数据的方式:

  • 标记删除:将数据标识为在未来的某个日期删除。这是首选方法。
  • 硬删除:立即且永久地移除数据。

避免直接硬删除#

应避免直接调用硬删除类,因为这可能导致意外的数据丢失。具体而言,避免调用以下类:

  • Projects::DestroyService
  • ProjectDestroyWorker
  • Groups::DestroyService
  • GroupDestroyWorker

针对项目#

不要使用 Projects::DestroyService,应使用 Projects::MarkForDeletionService

ruby
Projects::MarkForDeletionService.new(project, current_user).execute

针对群组#

不要使用 Groups::DestroyService,应使用 Groups::MarkForDeletionService

ruby
Groups::MarkForDeletionService.new(group, current_user).execute