图形版本控制

53

假设一个开发团队包括(或利用)创建产品中所有图像的图形艺术家。 这些东西包括图标、位图、窗口背景、按钮图像、动画等等。

显然,构建软件所需的一切都应该是在某种形式的版本控制下。 但是,大多数针对开发人员的版本控制系统主要设计用于基于文本的信息。 图形人员应该使用与程序员相同的版本控制系统和存储库吗? 如果不是,他们应该使用什么,并保持一切同步的最佳方法是什么?


2
http://superuser.com/questions/5917/version-control-for-images - balexandre
15个回答

18

是的,在版本控制中拥有艺术资源非常有用。您可以跟踪历史记录、回滚更改,同时还可以使用单个源进行备份。需要注意的是,艺术资源要大得多,因此您的服务器需要具备大量的磁盘空间和网络带宽。

我曾经在非常大的项目(+100 GB)中成功地使用了Perforce,但我们不得不使用一些对艺术家更友好的东西来包装访问版本控制服务器。

我听说Alienbrain也不错,它似乎有一个非常流畅的用户界面。


12

5
我们也只是将二进制文件放在源代码控制中。我们使用Git,但对于Subversion同样适用。
我的建议是尽可能使用SVG格式的图片,因为你可以看到实际的差异。对于二进制文件(大多数其他图像格式),最好的方法是查看版本历史记录。

1
使用SVG会得到+1分。它还可以减小git文件夹的大小,因为它可以保存差异而不是所有文件版本。 - Alexandre Neto
Adobe产品内部有XML结构。虽然我没有尝试过,但认为在版本控制中使用它们是很好的选择。 - Даниил Пронин

4

很多图形设计人员需要比Subversion更复杂的东西。虽然它适合版本控制,但他们需要一个内容管理系统,允许跨引用资产、标记、缩略图等(以及版本控制)。


4

TortoiseSVN可以将图像修订版本并排显示,非常有用。我已经在不同的团队中使用它,并取得了很大的成功。艺术家们喜欢拥有回滚事物的能力(在他们习惯了这些概念之后)。但是,它确实需要很多空间。


1
TortoiseGIT也能做到!\o/ - cregox

3
有趣的问题。我没有很多直接与设计师合作的经验。当我这样做时,是通过一种契约形式进行的,他们“交付”了设计。我为网站和桌面应用程序做过一些自己的设计工作,虽然我以前没有使用过源代码控制,但我正在为自己的使用实施SVN,因为我开始做一些有偿的自由职业工作。我打算像处理源代码一样利用版本/源代码控制。它只是项目主干中的另一个文件夹。在没有源代码控制的情况下,我创建了一个“资产”文件夹,其中包含所有媒体文件,这些文件相当于源代码。我喜欢把Photoshop PSD看作是“图形源代码”,而用于网站或其他用途的JPEG输出则是“已编译版本”。
在与设计师合作的情况下,这是我即将面临的一个明显可能性,我想尝试让他们定期“签入”他们的不同版本的源文件。我很想知道有经验的其他人对此会有什么回应。

2
在我看来,Pixelapse 结合备份解决方案是目前我找到的最好的图形版本控制软件。它支持 Adobe 文件和一堆普通光栅图像。它有逐个版本的预览功能。当文件更新(保存时)时,它会自动保存。它的工作方式类似于 Dropbox,但拥有一个出色的 Web 接口。
您可以在团队中使用它,并将项目分享给不同的人。它还支持无限的审阅者,这对设计机构非常有用。如果您想要的话,您可以在“开放”的项目上进行公开协作。
不幸的是,您无法拥有本地的 Pixelapse 服务器,因此我的当前设置是,在 Git 存储库中创建快照时,我将 Pixelapse 文件夹(类似于 Dropbox 文件夹)放在其中以进行备份。

1
LayerVault看起来更好。 - Даниил Пронин

2
我们使用Subversion。只需在/trunk/docs下放置一个文件夹,供设计师检出和提交。这样做非常简单易行。

2
我一定会将图形放置在版本控制下。虽然diff工具如diffmerge中的差异可能不是非常有用,但您仍然可以检出两个版本的图形并并排查看以查看差异。
我认为应该将生成的图形保存在程序员使用的相同版本控制系统中。但是,如果您使用PSD文件或PDN文件创建图形,则可能需要为这些文件创建单独的存储库,因为它们与实际的end jpeg或gif具有不同的上下文,这些文件随开发应用程序一起部署。

2

@lomaxx TortoiseSVN包括一个名为TortoiseIDiff的程序,看起来是用于图像差异比较的工具。虽然我没有使用过它,但很有趣。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接