如果我在P4V中打开了一个工作区并切换了工作区,是否有办法通知或检测到外部发生了切换?
工作区包含一个编辑器,需要检出文件才能修改它们。我担心通过P4V进行切换会让编辑器意识不到文件现在来自不同的流。
我宁愿有一种方法在编辑器中检测到这一点,而不是在可能的情况下从P4V通知。
谢谢,亚历克斯
发布于 2018-04-09 23:13:10
你是说你的编辑器会自动签出文件吗?这很常见,所以你不是一个人。我可以问一下,是什么编辑吗?
你知道你的编辑是如何与Perforce对话的吗?我认为它发出p4.exe ( cmdline工具)命令,例如p4 edit,对吗?(另一种方式是使用一种P4 API,例如p4java或p4python。)如果是这样,则p4 edit命令已经不遵守P4V工作空间设置。p4.exe命令行工具将与one of six ways中指定的p4工作区一起使用。为了始终使用正确的客户端,
对于编辑器的p4集成,在每个workspaces
P4CONFIG文件指定P4CLIENT=[client name],这样p4 edit命令就可以在给定的工作区(从CWD的意义上)中有效地运行;您可以使用-d开关来实现这一点,例如,在签出C:\workspaces\wksp1\foo\bar\baz.c时,您可以调用CWD发布于 2018-04-09 23:07:50
如果用户正在使用一个新的工作区,他们也将使用一组不同的文件,因此希望不会有太多的混淆机会。(除非他们用同一个Root创建了多个工作区,在这种情况下,他们会尽最大努力从自己的膝盖骨上射出。)
如果他们在当前工作空间中切换了流,您可以使用"p4 info“、"p4 client -o”或"p4 stream -o“之类的命令检测到这一点。
https://stackoverflow.com/questions/49733626
复制相似问题