我正在考虑使用 Git LFS 作为存储库,该存储库将包含我们的系统映像构建工具(在本例中为 Packer)使用的 ISO 和安装程序文件。然后,我们将其添加为具有构建脚本的主存储库的子模块,以便将其集成到我们的 CI 工具链中。
据我了解 Git LFS,大文件被指针替换,因此存储库拉取和维护很快,然后通过不同的渠道下载文件。
但是,当我们添加文件时,它们的名称中将包含版本号,因此它们不需要更新(例如ubuntu-16.04.4-server-amd64.iso)。它们也不需要删除,因为我们将在构建脚本中通过该全名引用特定版本。我们基本上总是会添加并且很少(如果有的话)更新或删除。
看来Git LFS主要是为了更新/删除。我们的用例还有其他技术优势吗?