Foreword
总结一下最近遇到的数字资产管理问题,一般来说,代码、文档,各种软件的工程,素材都算作数字资产,从企业长期发展的角度来看,他们都需要合理管理。
也算是回答一下,小团队到大团队都要经历些什么,各种软硬件配套的东西要怎么选。
为什么需要数字资产管理
一定有人遇到过写完文档,找不到原文件在哪里,找不到链接中缺失的关键图片,找不到各种关键素材,一个工程改了n遍,找不到某个版本,如果有个管理软件,这些都不是问题。
如果仅仅是我个人,代码管理用git足矣,文章也用同样的git方式进行管理,写文档用Typora,写代码用对应的IDE,后续有对应的服务器进行CI、CD,对于个人而言完全够了。整个代码或者数字内容从生产到发布,一条龙,git一把梭,十分轻松。
但是当不是一个人,而是一群程序员的时候,代码还可以用git,但是文档就不好说了,有人是用word、有人是用markdown,各种文档和图片都是没有统一管理的。这个时候可以进行约束,要求每个人都使用markdown,文档格式统一了,但是会发现,文档内的图片依然散乱,传递markdown文件时总会拉下图片(这里也可以使用图床或者文件床之类的,但是距离开箱即用还是有点远,所以没考虑)。我们继续加一层约束,统一使用git+obsidian管理所有文档相关内容,统一的配置,图片、视频等等内容都可以存储在设定的路径中。
如果再进一步呢,不仅仅是程序员了,还有一些艺术家,还有硬件设计、结构设计等等人员加入的时候,用git依然能管理他们的工程和素材,但是在好用程度上变得越来越差了,文档同样也需要使用git+obsidian来管理。接下来就需要教会每个人使用git,理解git的工作流、版本控制,冲突等等,这样带来的学习成本和门槛实在是有点高了,它能用,但是不够好。
数字资产管理
数字资产管理是个比较大的概念,具体到各行各业,各有各的软件或者标准,比如软件这里用的比较多的就是Git或者SVN,艺术设计里用的比较多的就是Perforce或者是CG teamwork,同样的摄影领域也有他们的素材管理软件,这种类型的软件我们统一称为数字资产管理软件。
数字资产管理,不仅仅要管理这个文件怎样存储,可能也会涉及到数字内容是如何生产、测试、发布的,还有甚者甚至包括了部分企业的OA、ERP等系统内容。目前来看没有哪一款软件做到了统一,多数都只能覆盖某一方面,实际情况下是多个软件一起在用的。
通用性的软件
通用性的软件,基本上是所有管理软件的基础,最基础的管理有他足以。
Git
Git仅仅解决了软件的版本控制,并没有解决数字内容要存储在哪里的问题
Git的GUI基本是最搓的,没有中文,排版不合理,UI元素也都是老的掉渣的风格
SVN
SVN本身是C/S架构的,对比Git稍微复杂了一些,数字内容也是跟随服务端进行存储的。
SourceTree
https://www.sourcetreeapp.com/
由于Git本身UI或者Cmd不方便非专业的人使用,SourceTree这种简化的设计就更方便其他人使用Git
SourceTree 本身绑定了Bitbucket的服务(类似Github),Mercurial的版本管理,所以他会额外安装一些工具来处理,并且他的下载链接基本上是国外的,国内安装稍微有点问题。
总体来说本地化还行,安装完自动切换到中文环境中了。
如果勾选显示远程分支
,当你切换分支的时候,你还能看到更新的其他分支的commit,只有当前高亮的才是指你目前分支所处的位置,这种设计可以总览大局,但是感觉怪怪的。好处就是你可以看到好多远端上已经开发的commit
本身支持多tab,可以一个窗口看到多个仓库的情况,这个还是蛮实用的
账号密码的验证也能看到当前已经存储的信息,方便多账号修改
TortoiseGit/SVN
https://tortoisegit.org/
Tortoise也是类似SourceTree,为了简化Git和SVN而生
Tortoise本身和语言包是分开的,中文需要额外安装一下,对比SourceTree稍微繁琐了一点
Tortoise本身的UI和操作都是基于右键的,显得有点繁琐,UI有,但是不多
Tortoise有一些统计信息,还挺有意思的
对比起来SourceTree应该是明显优于TortoiseGit的
Fork
https://git-fork.com/
Fork也是类似SourceTree,为了简化Git而生,似乎Fork的性能更好一些
Fork是Git简化工具中唯一收费的,也是唯一不支持多语言的,没有中文的,减一分。
不止如此,Fork还是最老的那一套方式,默认自建一个代码管理的总仓库,不经过我同意就拉了我一个本地仓库放到了他的自建路径中,不得不差评。
艺术工程管理
通用性的软件,因为通用所以他们不能对实际的业务需求做优化,只是小团队使用,多数情况下够了,但是当团队规模扩展大,生产的数字内容需要多方交互的时候,基于Git/SVN的软件就不够用了,需要更多的考虑大文件传输、文件的权限管理、存储安全、多地协同等问题,这个时候就需要一些更大型的管理软件来完成了。
艺术资源管理,比较偏向于流程管理,对于版本管理的概念比较淡,多数都是为了保证流水线设计ok,项目周期ok。目前看到的艺术资源管理都很像目前比较火的无码化流程设计。
以下软件都是我按顺序探索的,大部分结论都来自于视频或者官方说明
Perforce
https://www.perforce.com/
Perforce是一家DevOps解决方案的提供商,其产品包括用于版本控制的Helix Core、用于应用程序生命周期管理的Helix ALM解决方案、用于敏捷规划的Hansoft 和用于静态代码分析的Klockwork等
Perforce主要是解决软件开发的,但是据我所知,一些设计到艺术流程的公司也在用Perforce进行管理。
Shotgun/ShotGrid
https://www.shotgridsoftware.com/blog/welcome-to-autodesk-shotgrid/
ShotGrid(以前称为 Shotgun 软件)受到全球数千个创意工作室的信任,是一个统一制作管理和创意流程的中心枢纽。
ShotGrid 更偏向流程管理,一个电视剧、电影、游戏、CG等项目,他们的流程是大致相似的,中间会出现的各种实体之间的关系是比较类似的。ShotGrid由于更偏向流程,他能直接追到一个项目的各个子部分的进度,以确保最终可以按时发布。
ShotGrid 使用的基础结构非常类似数据库,整个流程或者各种业务的字段或者数据都是需要自定义的。建好了各种实体以后,还需要建立工序,也就是工作流,先做什么,再做什么,最后做什么
管理者使用ShotGrid 主要就是去规划项目,分配任务,而员工则是使用ShotGrid 获取到现在该做什么,以及后续流程是怎样的。
不过有点搞笑的地方就是ShotGrid说着自己和Excel管理不同,但是当遇到批量资产管理的时候,还是得去Excel里快速编辑,编辑完了后再导回ShotGrid。
ShotGrid CREATE就是一个任务管理中心,具体有什么任务,以及任务提交(资产上传)都是在这里处理。而审核人则是可以对提交的各种素材进行注释,再让这个素材继续进行修改之类的。
同时ShotGrid由于是Autodesk家的,所以旗下所有软件都内置了ShotGrid,比如在Maya中就可以直接看到你ShotGrid中的任务。
ShotGrid本身的设计直接是把文件存储的这个概念对普通人屏蔽了,只有负责管理的人才知道实际存储在了哪里。存储是提前以模板模式设置好的。艺术家只需要专注于任务本身就行了,不用在意素材的存储。当然艺术家自己需要的其他人的素材也都是由ShotGrid提供出来的。这样的设计直接解耦了存储问题。
ShotGrid是真的把原来的工作流给做成了流水线,每个艺术家都变成了流水线上的工人,干完活就完事了。而管理层则有着大量的管理任务,流水线的设计,项目进度的安排,各种内容的审核,确实是做到了一环扣一环,名副其实数字流水线。那平时看到的数字内容,如果有问题,讲道理审核者一个都跑不了,流水过程明明白白。
CGTeamwork
http://cgteamwork.com/indexp.html
CGTeamwork非常像ShotGrid,甚至可以认为是国产化的ShotGrid,都是这种类型的管理,不过多了一些插件管理、IM聊天,各种事件触发等等
管理软件的UI等等更现代化一些,但是总体上还是大同小异吧,架构上都是C/S的,核心内容都是存储在服务端的。
Strack
国产仿ShotGrid,不过公司已经注销,具体产品嘛?没见过
TACTIC
https://www.southpawtech.com/tactic-open-source
https://github.com/Southpaw-TACTIC/TACTIC
TACTIC是一个高度灵活的基于Web的生产资产管理系统,用于解决复杂的数字内容创作管理问题。通过数字资产管理与项目管理,TACTIC保证数据安全,开发进度以创造更好的数字内容。TACTIC本身是一个开源方案。
TACTIC也是类似ShotGrid的方案,虽然是开源,但是实际上使用的人也不是很多。在CG领域里写代码的还是太少了,这种开源方案都需要各种TD支持,而TD本身就是稀缺资源,普及程度自然高不起来。
ftrack
https://www.ftrack.com/cn/studio-cn
ftrack 目前看来中国化的非常不错,应该也是希望能抢占中国市场。
同时ftrack可以和Perforce联合使用,可以将Perforce作为存储方案。
软件工程管理
软件这边流程更注重CI、CD、自动化测试等流程,对于便捷性要求反而没有那么高,同时DIY、二次开发修改的程度就更高一些。DevOps类型的软件非常多,有限的时间里我也只能尝试一下我看到了几款。
Github
https://github.com/
全球最大的代码存储站,Github最开始的只负责存储代码,问题反馈,慢慢有了Wiki文档管理,后续又加入了CI、CD流程,项目管理、社区交流,甚至云IDE也上线了,对于一个开源软件来说是可以全部在Github上走完全生命周期的。
更不用说Github可以支持企业私有化部署,也可以使用SaaS的在线服务,后续推出的Copilot更是节省了大部分程序的生命。
唯一不好的地方在于Github国内用起来不爽。
Gitee
https://gitee.com/
Gitee 基本上都是国内对标Github的,Gitee由于国内审查问题导致最近口碑下滑。
coding.net
https://coding.net/
coding.net背靠腾讯云,但是之前在git提交流程中打广告,给人恶心坏了
JIRA
https://www.atlassian.com/software/jira
JIRA则是项目与事务跟踪工具,比较类似ShotGrid的这种概念,提前设计好各种工作流和Story,后续就是开发人员按部就班的工作就行了。
JIRA把工程描述成了一个故事,具体你这个故事是宏伟史诗,超级长篇,还是短小精悍的短篇小说,取决于使用者。
JIRA的本地适配不是很好,小团队版倒是非常便宜(国外购买,国内代理价格离谱)
禅道
https://www.zentao.net/
国产项目管理软件,他的DevOps是可以集成其他软件的,比如GitLab、Github等等。
Tower
https://tower.im/
Tower在这一群老大哥中显得就有点简单了,一体化的程度不高。总体还是先制作各种工程模板,然后使用模板,或者特化模板等等。
GitLab
https://about.GitLab.com/
GitLab算是应用比较多的,其免费版本支持私有化部署,并且支持CI、CD等内容,其本身也开源,效果直追Github。相对资料也算是非常多,GitLab的工程实践也很多,如果要尝试部署还是比较简单的。
不过有一说一,GitLab的网页体验上是不如Github的,特别是流畅度,集成度也没有Github高。但是如果只是把GitLab作为软件等内容的存储配置是完全没有问题的。
维格云
https://vika.cn/
维格表则是更简单一些的电子表格,轻量化的设计,数据收集,后期处理。他更多侧重数据的收集和管理。
PingCode
https://pingcode.com/
PingCode更像是Jira等软件的集合体,更多的是偏重于需求看板管理,工单处理的内容
Codes
https://icodes.work/
Codes也是类似的一站式解决方案,看了一下帮助,文档都还没写全的级别,在线体验数据乱七八糟的,整体看着也很凌乱,没有更高级的视角查看全局,只有反复的迭代迭代
文档管理
有了足够的存储和流程管理,还有一个就是文档管理,基本上所有的管理中,文档这一块都是比较薄弱的,更不用说如果还要文档编辑,那对于管理软件的要求就更高了。所以目前是有必要单独使用一个额外的文档管理软件的。
Obsidian
https://obsidian.md/
Obsidian,只要有git仓库为依靠,基本就是完美的文档管理软件。
Notion
https://www.notion.so
解决完美的文档管理,如果国内有服务就更好了
wolai
https://www.wolai.com/
notion国内克隆版,目前可以接入企业微信,企业版有各种权限审计的方式,只是管理软件文档和一些流程性的文档是完全够用的。如果涉及更多的报表或者是数据统计之类的东西可能还是要用维格云。
wolai的文档可以方便的导入或者开启企业版批量导出,对于原先的老文档都可以快速转变,还是很好用的。
wolai目前基本解决了文字方面的需求,但是如果要画图,对于非程序用户还是不够好,目前可以配合其他在线画图的软件嵌入使用。
mermaid画图又太过专业了,不适合小白,复杂图也画不了,后续wolai如果能补上画图这一方面的缺口那就更好了。
wolai有个奇葩的点,wolai的子空间,如果员工创建了子空间,那么企业空间的管理者是没有权限管理子空间的。你没看过,最大权限的管理是不能管理子空间的,没想到吧? 而wolai的产品还振振有词这是产品的灵活性,我是没看懂什么东西灵活了?wolai只是个文档管理软件,本质上大家用他就是他屏蔽了我们会遇到的存储的问题,能对标的管理类型软件就是NAS或者各种云盘,只是他是文档类型的而已。谁家云盘或者NAS的总管理是不能管理下面的成员的空间的?
而wolai的产品依然嘴犟到企业空间的创建者不是管理,而是普通员工。这种情况有可能发生,但是发生说明管理是失职的啊,这种涉及这么多人的东西,当然要管理者自己来,直接放给了普通员工是什么脑回路?
wolai也发现了这样是有问题的,所以增加了不允许成员创建子空间的权限,这不就是脱裤子放屁,多此一举吗?为了防止出现大管理管理不了子空间,所以禁止其他人创建子空间….而这样一棒子打死,就导致了如果想给部分人给创建空间的权限就给不了。
还得吐槽一下,wolai的markdown书写体验还是十分恶心,复制邮箱自动转换成链接,怎么都无法改成行内代码的模式,输入单引号不会自动匹配,必须把内容输入完再自己手动输入一个单引号才能转换格式。
Confluence
https://www.atlassian.com/zh/software/confluence
Confluence 和 JIRA是同一家公司出品的,它本身是一个C/S架构的,所以一上来就直接解决了文档本身的存储问题。
现在Confluence也有在线版本的,数据可以让别人帮你存储了。
Confluence的交互设计做的也越来越多了,很多文档可以直接让其他人审阅或者评论,然后再次修改,甚至有点像企业内部的社交媒体平台,而对外他也能设计一套wiki给到其他人参考。Confluence本身是不支持markdown的,他的书写也是基于自己的富文本编辑。目前大疆是基于JIRA和Confluence的
Summary
暂时就了解了这么多,设计上大同小异。一个团队从几个人发展到几十个人,再到几百个人,管理的难度逐步增加,而开放的扁平管理多数情况下是无法维持逐渐增长的团队规模和团队内快速流程的矛盾的,必须要能找到能满足我们存储和流程管理的软件。
ShotGrid的设计思路还是非常不错的,直接屏蔽了艺术家等对于存储的问题,甚至直接检测文件是否符合规范,真的做到了把艺术家当流水线工人来用,同理码农、螺丝钉。
但是能用这样的管理都是基于你的制作周期、项目难度等等是可以明确预测和估计的,就比如一个xxx管理系统,有前期的各种需求调研,所有需要制作的内容都是十分明确的,就好像盖房子,每一道工序都是已知的,只要按照计划执行就行了,不存在说你打地基的时候才研究怎么挖坑。而如果要对技术上进行一定的探索,这种模式是不够的,至少很多环节都是无法按部就班的照搬的,技术是否可行、最终能否落地、实际效果如何都是没办法预测的。
同样的作为管理者就需要思考如何将不稳定或者无法预测的环节通过流程的容度,将他们包含进去。
Quote
https://zhuanlan.zhihu.com/p/627811280
https://blog.csdn.net/qq_28171389/article/details/118926966
https://zhuanlan.zhihu.com/p/33617842
https://zhuanlan.zhihu.com/p/366111691
https://blog.csdn.net/qq_28171389/article/details/94974671
https://zhuanlan.zhihu.com/p/29026973
https://www.aducg.com/2016/09/16/tactic-cg-project-management-system/
https://www.bilibili.com/video/BV1jv411w76D