Version: 2019.3
Perforce 集成
将外部版本控制系统用于 Unity

Plastic SCM 集成

Plastic SCM 是版本控制软件。有关 Plastic SCM 的更多信息,请参阅其网站

要设置 Plastic SCM,请参阅其关于设置 Plastic SCM 的文档。有关在 Unity 中设置版本控制的信息,请参阅版本控制文档。

使用 Plastic SCM 签出文件

如果您修改了文件,Plastic SCM 会自动签出文件。唯一需要特定签出说明的文件是项目设置 (Project Settings) 文件,否则无法更改这些文件。

使用 Plastic SCM 解决冲突与合并

在项目中本地编辑某些文件时,如果远程也编辑了这些文件(冲突),则需要执行合并。这意味着需要在执行合并之前查看更改。如果 Unity 认为需要在提交更改之前执行合并,则将提示您完成合并。此时将转到 Plastic SCM 客户端。

如果传入的更改与本地更改冲突,则会在传入更改窗口中的冲突文件上显示一个问号图标。以下是使用 Plastic SCM 解决冲突与合并的快速指南:

  • Version Control 窗口中,选择 Apply all incoming changes 按钮。此时将自动跳转到 Plastic SCM GUI 客户端。
  • 在客户端窗口中,单击 Explain merge 以更直观的方式了解更改情况。选择 __Process all merges__,随即将显示另一个窗口。
  • 此窗口显示各个冲突,您可以选择要保留或丢弃的更改。
  • 解决冲突后,请选择保存并退出,Plastic SCM 将完成合并操作。
  • 通过 Unity 的 Version Control 窗口推送更改。

使用 Plastic SCM 锁定文件

要使用 Plastic SCM 来锁定文件,请执行以下操作:

  • 创建一个 lock.conf 文件并将其放置在服务器目录中。可在 ../PlasticSCM/server 中找到服务器目录。
  • 在 lock.conf 文件中,指定正在处理的代码仓库以及要执行锁定检查的服务器。下面是一个示例:
rep:default lockserver:localhost:8087
*.unity
*.unity.meta

在此示例中,所有 .unity 和 .unity.meta 文件都将被锁定以便在存储库“default”上签出。

  • 通过打开终端/命令行窗口并找到服务器目录来重新启动服务器。进入目录后,可使用 ./plasticsd restart 命令来重新启动服务器。
  • 打开 Unity Editor 并签出希望锁定的文件,然后返回到终端/命令行并输入:cm listlocks
  • 终端/命令行窗口会显示已锁定文件的列表。还可以通过尝试使用其他用户身份签出同一文件来测试是否可行。Unity 的控制台中将显示一条错误消息,指出该文件已被其他用户签出。

有关更多信息,请访问 Plastic SCM 锁定文件文档。

与 Perforce 的区别

PlasticSCM 不支持远程活动,但 Perforce 支持。因此,在 Editor 中,Plastic SCM 无法使用此功能。Project 窗口中不会显示“Checked out Remote”和“Out of Sync”之类的状态。

使用 Plastic SCM 进行分布式和脱机工作

有关使用 Plastic SCM 在分布式模式 (DVCS) 和脱机状态下工作的更多信息,请参阅 Plastic SCM 的分布式版本控制指南 (Distributed Version Control Guide)

Perforce 集成
将外部版本控制系统用于 Unity