Wiki
Quickstart
无需终端,10分钟内完成第一次checkin。
如果你刚加入一个uVersion项目并想开始工作,这个页面就是为你准备的。 一切都在桌面客户端中完成:无需输入任何命令行。
你只需要知道工作室的uVersion服务器地址及其端口、你的用户名和密码。这些信息由你工作室的管理员 提供。如果对方只给了地址而没有端口,请向其索要:端口无法猜到,而这正是最常被遗漏的一项。
术语,用五行讲清
- 预留一个文件就是checkout:你向团队宣告你将要修改它。
- 发送它就是checkin:你的工作被送往服务器,你的预留也被交回。
- 撤销就是revert:文件重新变得与服务器上的版本一致,你的预留也被交回。
- workspace是你磁盘上的一个文件夹,与服务器上的一个仓库相连。你可以有多个。
- 锁(lock)可防止两个人同时修改同一个二进制文件:对于
.uasset,事后没有任何办法把两个版本合并。
1. 安装桌面客户端
从 uversion.io/downloads 下载适用于你系统的客户端:
- Windows:
uVersion_x.y.z_x64-setup.exe。双击并按照安装程序操作。 - macOS (Apple Silicon):
uVersion_x.y.z_macos-arm64.app.zip。解压后,将uVersion.app拖入 应用程序。 - Linux:一条粘贴到终端里的命令,见下方。
在Linux上,最简单的方式是安装脚本。无需 sudo:
curl -fSL https://uversion.io/downloads/client/install.sh | sh
它会把应用放到 ~/Applications 并启动它。系统上不会安装任何东西,也不要求管理员权限。你也可以从下载
页面获取AppImage,赋予其可执行权限并运行。详情与前置条件:桌面客户端。
2. 登录服务器
1. 填写地址、用户名和密码
启动桌面客户端。Welcome to uVersion 页面会询问三项内容。Server address 字段
并不需要完整的URL:它被拆成三块,一个不可修改的 https:// 前缀、主机,以及端口。
端口默认为 8443,而这恰恰是最常被遗忘的:你的工作室会给你类似 uversion.mygamestudio.com
和 8443 的东西,而不是单独的 https://uversion.mygamestudio.com。如果你把完整地址粘贴到
主机字段,客户端会自动把它拆到两个框里。接着填写 Username 和 Password,然后点击
Sign in。
2. 确认服务器身份,仅需一次
uVersion服务器默认带有自签名证书。这是正常情况,并非异常,也是在没有心理准备时最先卡住的地方。因此 在你第一次连接时,客户端会显示 Verify server identity,并附上服务器的SHA-256指纹。把它与管理员 通过其他渠道(消息、内部wiki、口头)告诉你的进行比对,如果一致,点击 Trust this server。
这个问题每台服务器只问一次。如果日后它以红色标题 Server identity changed 再次出现,说明指纹变了: 未向管理员确认前不要接受。详见 TLS指纹 页面。
登录后,客户端会记住你的会话。日常工作中你无需再次输入密码。
3. 将项目获取到本机
项目列表不会自动出现:需要你把它打开。
1. 打开项目列表
只要还没有打开任何项目,Workspace就会显示 No repository selected 和一个 Open Repository 按钮:点击它。如果你已经打开了一个workspace,也可以通过标签栏的 + 打开同一个窗口。它会列出你有权访问的项目,每个项目一张卡片。
2. 核对workspace名称,然后克隆
在目标项目的卡片上,Workspace name 字段决定将要创建的文件夹的名称。留空时,它沿用项目名称。也请 核对窗口最底部的 Download files after clone 复选框:默认勾选,会紧接着开始下载。如果你只想创建 workspace、稍后再取文件,就取消勾选。然后点击 Clone。如果这个项目你已经有一个workspace,按钮会 叫做 Clone New:再克隆一次是正当的,比如为了在两个内容分支上工作。
3. 选择父文件夹
系统的文件夹选择器会打开,标题为 Choose where to clone <项目名称>。你选择的文件夹
是父文件夹:uVersion会在其中创建一个以 Workspace name 字段命名的子文件夹。所以要选
D:/Projets,而不是 D:/Projets/MonJeu,否则你会得到 D:/Projets/MonJeu/MonJeu。
4. 让传输完成
传输会显示在客户端顶部,带有速率和一个预计剩余时间:以这个估算为准,因为耗时完全取决于你的网络链路和服务器负载。这 期间你可以继续使用客户端,而且网络中断不会丢失任何内容:传输会自动恢复。
完成后,项目即可在Unreal中打开。
4. 编辑并发送文件
在桌面客户端的 Files 标签页中进行的典型三步工作流。
1. 预留文件
在树中选择文件。只有当选中了内容时,操作栏才存在:只要选择为空,就没有任何按钮,而这并不是正在
加载。一旦选中某个文件,操作栏就会出现,前面带有条目数量({n} file(s) selected)。点击
Checkout:文件变为可编辑,而且只要由你持有,别人就无法碰它。
2. 编辑文件
在Unreal里,或在任何其他工具里。在这个阶段,uVersion这边没有什么特别要做的。
3. 发送你的修改
选择文件,然后点击 Checkin。会弹出一个窗口要求填写消息:写一句话说明你改了什么。发送会交回你的预留, 文件重新变为只读。
特殊情况:你刚创建的文件
一个全新的文件在服务器端还不存在:没有什么可预留的,它也不会出现 Checkout 按钮。选中它,点击 Add,再点击 Checkin。
特殊情况:文件已被队友预留
这时你会在 Pending 标签页的 Other users' locks 区域看到它,附有持有者的名字, 以及一个向对方发送请求的 Request Release 按钮。这个按钮只存在于桌面客户端中,Unreal里没有。
5. 直接在Unreal中工作
.uproject 文件(位于根目录、用于描述一个Unreal项目的文件),就会把正确的二进制放入
Plugins/uVersion/。你无需手动做任何事。
1. 在Unreal中打开项目
通过桌面客户端的 Open Editor 按钮,或像往常一样打开。正常情况下没有什么要连接的:插件一旦检测到 项目位于某个uVersion workspace中,就会把自己选为版本控制系统。你的凭据会从桌面客户端沿用,无需 重新输入。
2. 如果插件没有自动启用
打开编辑器状态栏右下角的 Revision Control 菜单,选择 Connect to Revision Control,在 Provider 列表中选择 uVersion,然后点击 Accept Settings。
3. 从Content Browser预留并发送
连接后,所有版本控制都在Unreal中进行:右键点击某个asset,然后用 Revision Control → Check Out 预留它,用 Check In 发送它。
- Content Browser中的小图标可查看每个asset的状态
- 可从历史记录中使用Blueprint diff
- 如果管理员启用了规则,会在checkin时进行校验(默认关闭)
.cpp、.h、.hpp、.c、.cs)会被插件在
checkin时拒绝:它们要经过桌面客户端,由其在发送前编译。即使你从不碰代码也该知道的后果:只要你持有哪怕一个
代码文件的预留,你的内容发送也会一并被拒绝。参见 Unreal Engine插件 页面。
接下来
- 了解 桌面客户端的全部功能
- 在你的项目中安装 Unreal Engine插件