4

我最近使用 Gitlab CE 建立了一个小型 Linux 服务器,以便测试 Git LFS 用于游戏开发。为了感受 Gitlab 和 LFS 工作流程,我在一个流行的游戏引擎中创建了一个测试项目,其中包含许多大型二进制资产。在快速编写之后.gitignore.gitattributes我们能够将 repo 推送到我们的服务器并将其克隆到另一台 PC,同时我们的大型资产文件得到了适当的处理!从工作流程的角度来看,它肯定比我们的旧设置更好——使用 Git 编写代码,使用 SVN 编写资产。

然而,我们注意到的问题之一是清理我们的测试项目并从我们的服务器中删除不需要的 LFS 文件。似乎 Gitlab 将每个项目的所有 LFS 文件都存储在一个存储目录中(在我们的例子中,我相信它是/mnt/storage/git-lfs-objects)。最重要的是,LFS 存储目录中的所有文件都有简短的十六进制名称,无法分辨文件是什么或它们属于哪个项目。即使从 gitlab 中删除了我们的测试项目,我们也注意到 lfs-objects 仍然存在!

那么,有没有办法从我们的 Gitlab 服务器的存储目录中删除不需要的 LFS 对象/文件?如果我们的 lfs-objects 存储在每个项目的子目录中,这似乎真的很容易和直观。如果 lfs 对象至少保留其原始文件名的一部分,那就更好了!我们真的很想为未来的游戏开发项目追求 git-lfs 和 gitlab,但我真的不喜欢将来自不同项目的数据混合到一个庞大的目录中的想法以及潜在的大“数据泄漏”填满我们的服务器带有难以识别的文件。

那么,我在这里缺少 git-lfs 或 Gitlab CE 的某些方面吗?我无法想象没有办法从服务器中删除不需要的 lfs 对象,但我运气不好!

4

0 回答 0