resolve

解决工作空间中的冲突。

用途

scm resolve 子命令提供了多个用于解决存储库工作空间中的冲突的选项。

大纲

选项和参数

-c  |  --checkedin ]
使用当前检入的版本来解决冲突。
-d  |  --dir ] workspace-path
scm loadscm share 创建的本地工作空间的路径名。在将 workspace-path 设置为当前工作目录的情况下运行此子命令。如果当前工作目录位于本地工作空间中,那么可以省略此选项。
-P  |  --password ] password for user ID in repository
在指定的存储库中,所指定的用户标识的密码。如果命令行中未包含此选项,那么将提示您输入密码。如果您指定了一个存储库 URI 或昵称,而您已使用 scm login 命令存储了它的凭证,那么将忽略此选项。
-p |  --proposed ]
使用建议的更改来解决冲突,从而废弃您的更改。
-r  |  --repository-uri ] repository URI
指定要在其中执行此操作的存储库。如果您已经使用 scm login 命令存储了存储库凭证,那么可以使用您为所存储的这些凭证提供的昵称。
-u  |  --username ] user ID in repository
指定存在于所指定的存储库中的用户标识。如果您指定了一个存储库 URI 或昵称,而您已使用 scm login 命令存储了它的凭证,那么将忽略此选项。
path ...
要解决的一个或多个文件或文件夹的完整路径名,此路径名起始于本地工作空间根。

示例

您正在本地工作空间中工作并接受一个变更集,该变更集与工作空间中的文件有冲突,这一点由 scm status 指示:

C:\local-workspaces\HelloJazz>scm status -C
工作空间:(1101)“HelloJazz”<->(1102)“HelloJazz Stream”
  组件:(1103)“HelloJazz”
    基线:(1108)3“beta2 updates”
    冲突:
      com.example.hellojazz.service/src/com/example/hellojazz/service/internal/>

    传出:
      变更集:
        (1115)!-@ <无注释>
          更改:
            !--c /com.example.hellojazz.service/src/com/example/hellojazz/servi>

在使用 scm conflicts 来查看冲突范围之后(请参阅 conflicts 参考页面以获取示例),使用 scm resolve 来通过建议的更改解决冲突。

C:\local-workspaces\HelloJazz>scm resolve --proposed com.example.hellojazz.service\src\com\example\hellojazz\service\internal\HelloJazzService.java

合并后的变更集(可以由 scm status 显示)已可供传递。

C:\local-workspaces\HelloJazz>scm status -C
工作空间:(1101)“HelloJazz”<->(1102)“HelloJazz Stream”
  组件:(1103)“HelloJazz”
    基线:(1108)3“beta2 updates”
    冲突:
      com.example.hellojazz.service/src/com/example/hellojazz/service/internal/>

    传出:
      变更集:
        (1115)--@ <无注释>
          更改:
            !--c /com.example.hellojazz.service/src/com/example/hellojazz/servi>

C:\local-workspaces\HelloJazz>scm deliver 1115
正在将更改从“HelloJazz”传递到“HelloJazz Stream”
  没有要流动的基线。

相关概念
更改流向、检测冲突和解决冲突

反馈