二进制文件版本控制工具选择难?看完这篇你会找到答案

来源:Perforce 作者:龙智 发布时间:2022-04-11 11:50

很多团队都开始寻找用于二进制文件的版本控制。随着越来越多的团队采用游戏引擎技术,他们产生了更多的艺术资产、构建和其他需要存储和跟踪的文件。

很多版本控制工具在版本控制或存储大型二进制文件方面根本做不好,比如游戏引擎文件。一个团队和他们的项目越多,有效管理这些文件就成为一个严重的问题。

对于大型二进制文件,您需要正确的版本控制。那么,哪个工具是最好的?

 

什么是二进制文件?

二进制文件是指任何非文本的文件,如图像、视频、3D 模型、游戏资产和许多其他类型。数据以二进制形式存储(以 “1”和 “0”的形式),该文件只能由了解正确读取信息方式的程序来打开。

如果您试图在文本编辑器中打开一个二进制文件,它看起来会显示为随机的字符和符号。

来自 Adobe 和其他艺术程序的艺术资产通常以二进制文件(也简单地称为 “二进制文件 “或 “二进制资产”)形式存储,因为它们不能很好地转化为文本。

 

二进制文件管理的挑战

众所周知,版本管理二进制文件版本很困难,但并非不可能,这取决于您使用什么版本控制工具。大多数流行的版本控制系统都不能很好地处理二进制文件,甚至根本不能处理(除了 Perforce Helix Core —— 后面会详细介绍)。

管理和版本化二进制文件的一些主要挑战包括:

  • 您无法合并它们,从而使资产上的合作变得困难。

  • 很少有版本控制系统强大到可以存储它们。

  • 它们占用了很多空间,特别是对于从事电子游戏等大项目的团队。

  • 许多项目都在使用它们,而且它们在各个角色和行业中越来越普遍。

一些版本控制系统比其他系统更容易管理二进制资产。让我们深入了解人们用哪些流行的版本控制系统来管理二进制文件,以及哪些系统适合这一目的。

 

流行的版本控制系统

首先,流行的版本控制系统是什么?您可能听说过:

 

哪些版本控制系统可用于管理大型二进制文件?

简短的回答:Perforce Helix Core 和 Subversion 是 TOP 版本控制系统,可以扩展到管理大型二进制文件。

更具体的答案:

  • Git 不适合二进制文件 —— 在 Git 中存储大型二进制文件是不可能的。每当一个大文件被修改和提交,Git 仓库就会呈指数级增长。有些团队用 Git LFS 来管理大文件。然而,使用 Git LFS 会使仓库变得复杂,因为二进制文件与文本文件存储在不同的系统中。Git 仓库只存储这些文件的链接。

  • Plastic对二进制文件来说不是很好 —— 它可以存储二进制文件。然而,一旦一个项目增长超过几 G,性能就会迅速下降。游戏和视觉特效项目可以迅速增长到这个大小,导致速度减慢和其他性能问题。

  • 对于二进制文件来说,Subversion 是可以的,但并不理想 —— 在技术上, 它可以对二进制文件进行版本管理。如果您要管理庞大的二进制文件,您的性能会受到影响,因为 SVN 很慢,而且有一个复杂的分支系统。它不能随着团队和项目的增长而很好地扩展。

  • Perforce Helix Core 是管理大型二进制文件的理想选择 —— Perforce Helix Core 存储和版本所有的数字资产,包括大型二进制文件。它的设计是为了快速处理 PB 级的数据,所以二进制文件用它很容易管理。

 

二进制文件的版本控制:要么选择Perforce Helix Core,要么选择Subversion

Perforce Helix Core 和 Apache Subversion(SVN)是需要对大型二进制文件进行版本管理的团队的唯一两个可行选择。那么,哪个更适合这项任务,为什么?

简短的回答:Perforce Helix Core 更好。

更具体的答案:在二进制文件管理方面,Perforce Helix Core 比 SVN 更好。SVN 可以很好地处理多个较小的二进制文件。它能很好地处理单个大文件,但在处理多个大的二进制文件时,性能会变慢或失效。对于处理许多大型艺术资产的团队,如游戏开发和虚拟制作团队,Subversion 根本无法胜任。

 

二进制文件的最佳版本控制系统:

Perforce Helix Core

Perforce Helix Core 是管理大型二进制资产的最佳版本控制系统。为什么?

表现

Perforce Helix Core 是市场上唯一的强大到可以处理大量大规模的文件,包括二进制文件的版本控制工具。

单一的事实来源

大多数处理二进制资产的版本控制系统必须单独存储它们。Perforce Helix Core 将二进制文件与源代码一起存储在同一个仓库中。您可以很容易地找到和更新您所需要的文件,使您能够简化您的构建过程。它是您整个团队的单一事实来源,确保时间和精力不被浪费。

文件锁定

对于处理二进制文件的团队来说,这是一个必不可少的功能,因为它们不能合并。

Perforce Helix Core 不仅提供文件锁,而且还有一个互斥签出的功能。这确保您的团队不会在不知情的情况下浪费时间,对同一个文件进行修改,却无法合并大家的修改。

安全问题

Perforce Helix Core 提供了完全可配置的安全性,具体到单个用户和文件。对于电影行业的人来说,Perforce 是可信的合作伙伴网络(TPN)的一部分,以确保我们符合所有的行业安全标准。

继续使用 Git

如果您需要一个更具可扩展性的版本控制工具,但您有团队需要继续在 Git 项目上工作,Perforce Helix Core 是理想的选择。Helix4Git 是一个免费插件,允许您的开发人员使用他们喜欢的 Git 工具。

版本控制所有文件类型

Perforce Helix Core 管理的不仅仅是源代码,它可以管理所有类型的文件。这意味着 Perforce Helix Core 支持您团队的每个成员。

轻松的云端部署

即使您的系统目前是在企业内部,各行业的许多团队都在关注云版本控制,因为它具有成本效益,易于维护,并能在远程和全球团队成员之间更好地协作。Perforce Helix Core 可以部署在您所选择的云中,并可在 AWS 和 Azure 的预配置环境中随时启动。它还可以免费提供给5个用户使用 DigitalOcean。

 

尝试对大型二进制文件进行免费版本控制

Perforce Helix Core 对不超过5个用户的小型团队是免费的。

对于游戏开发团队或其他处理大型二进制艺术资产的团队来说,Perforce Indie Studio Pack 提供了您开始工作所需的所有工具,而且是免费的。为游戏开发团队获得业界领先的版本控制、代码审查和项目管理。这个包可以随时部署在Azure、AWS 或内部部署。