Perforce 您对视图/分支机构的性能实践是什么?

Perforce 您对视图/分支机构的性能实践是什么?,perforce,branch,perforce-client-spec,Perforce,Branch,Perforce Client Spec,我是新来的 你认为P4最佳实践在视图/分支方面如何? 您是创建一个可以访问多个分支的视图,还是创建一个视图/分支 我不确定在视图/工作空间之间切换是否有那么容易 谢谢 Thomas如果“视图”指的是工作区(又名客户端规范),那么我努力为我正在处理的每个分支都提供一个客户端规范。我假设分支是指一个典型的系统,其中有主线、开发分支,也许还有发布分支 保持1-1对应关系的原因是它只会让事情变得更简单。它还可以防止发生意外-例如,当我在开发客户机规范中时,我知道我不能意外地查看或修改另一个分支中同名的文

我是新来的

你认为P4最佳实践在视图/分支方面如何?

您是创建一个可以访问多个分支的视图,还是创建一个视图/分支

我不确定在视图/工作空间之间切换是否有那么容易

谢谢

Thomas

如果“视图”指的是工作区(又名客户端规范),那么我努力为我正在处理的每个分支都提供一个客户端规范。我假设分支是指一个典型的系统,其中有主线、开发分支,也许还有发布分支

保持1-1对应关系的原因是它只会让事情变得更简单。它还可以防止发生意外-例如,当我在开发客户机规范中时,我知道我不能意外地查看或修改另一个分支中同名的文件。当您处于深层源文件夹层次结构的底层时,这将是一个很大的帮助

在Peforce中,保持观点“严密”通常是一种很好的做法,就像在任何事情中一样。它有助于提高服务器性能,进而有助于提高客户端计算机上的性能。但除了性能,我认为只看到你需要看到的东西的概念——让计算机为你做过滤——通常是一件好事。它可以让你专注于手头的工作而不会分心

切换工作区并不困难,根据您的环境和偏好,有很多方法可以做到这一点。例如,P4V在左窗格顶部有一个简单的下拉列表。切换工作区有什么困难?

  • 这就是为什么
  • 埃里克·辛克也有
  • 我创造了一个 可以访问多个分支的视图。 由于默认情况下分支出现在每个人的视图中,因此您希望在主线之外有一个用户区域
  • 许多工程师更熟悉分支的概念,因为它们存在于所有SCM系统中。但是,如果他们没有看到这个概念,观点可能会令人担忧
我不确定在视图/工作空间之间切换是否有那么容易 当然

这很容易。假设使用命令行,在每个客户端规范(又称视图)的根目录下创建一个
p4config.txt
。在每个
p4config.txt
中,将
P4CLIENT
变量设置为client-spec的名称。其他变量可以保持原样

这是我的示例
p4config.txt

P4USER=deepaknag
P4PORT=SJCPperforce01:1666
P4CLIENT=deepaknag_fbsd
然后设置
P4CONFIG
环境变量,如下所示:

export P4CONFIG=p4config.txt
现在,每当您更改客户端目录时,它都会自动使用“正确的”客户端规范。尝试发行:

p4 info
在客户端目录中进行验证



这也记录在(为我使用
p4
)中。

嗨,格雷格,谢谢你的回答。是的,使用P4V切换工作区很简单。在CLI上,我发现它不够直观。如果您有两个工作区,比如c:\WORSKAPACE1和c:\WORSKAPACE2,我的印象是,默认情况下,您应该只在其中一个工作区工作(例如,工作区1),在登录时定义,但很容易执行“cd c:\WORSKAPACE2”、“p4同步”,如果我没有弄错的话,当您认为工作区2会同步时,是工作区1进行同步。也许我错了?你可能把硬盘上的文件夹和Perforce中的工作区搞混了——后者将文件从仓库映射到前者。只需从命令行CD'ing就不会告诉Perforce任何事情—您只是在本地执行操作。您需要执行“set P4CLIENT=”,这将覆盖默认的客户端规范。请注意,如果希望Perforce根据文件系统上的当前目录为您切换客户机规格,可以使用P4CONFIG机制(在文档中查找)来完成。正如我所说,Perforce非常灵活/