问题标签 [perforce-stream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perforce - 如何将 Perforce 任务流转换为开发流?
它在 Perforce 文档中的几个地方说可以将任务流转换为开发流,但我没有找到实际操作的方法。
在 P4V 中,当我在流视图中右键单击流并选择编辑流“X”时,会出现流类型组合框,我认为应该将“任务”选项更改为“开发”。对于开发流,我可以使用组合框将流转换为例如主线或虚拟流,但对于我的所有任务流,组合框被禁用。
如何将任务流转换为开发流?我必须满足一些先决条件吗?
jenkins - 使用 jenkins 轮询多个 perforce 流
我有一个监控 Perforce 服务器的 Jenkins 服务器。Perforce 正在使用带有主线模型的流。我正在使用 Jenkins 来监控 Perforce 的变化,然后根据在哪里签入的内容来设置脚本。这在主流上效果很好,但我也想监视它下面的流。当我设置一个唯一目的是监视其他流的作业时,它只轮询主流,尽管将作业的规范设置为另一个流。我怀疑这是因为我用来运行主 jenkins 实例的机器上的本地 perforce 实例连接到了主流。如果是这种情况,我可以使用另一台机器作为从站,该机器严格连接到附加流以进行轮询。但是由于有很多流,这似乎是对资源的巨大浪费。
有谁知道我可以解决这个问题的方法?
perforce - 仅使用任务流规范在流库中定位文件
为了获得任意文件的 p4 打印,我正在寻找一种仅使用流规范而不是客户端规范来定位正确“解析”文件的方法。
例如,
主流有文件
第二个流//toto/test/是一个任务流,使用以下规范作为主流的父级
当我尝试在流测试中使用
我收到不同的输出取决于不同的因素。
如果文件从未在测试流中提交
如果我在正确的流中的客户端(使用 -c Client_Test 或任何其他方式设置客户端)中,则该文件由 p4 定位并正确打印。
如果我没有指定客户端,或者没有给 p4 任何关于它应该使用哪个客户端的指示,我会收到以下错误
//toto/test/file.txt - 没有这样的文件。
- 如果文件是在测试流上提交的,则文件被正确定位和打印。
我的目标是能够在不使用工作区的情况下打印任意文件,就好像我理解正确一样,流规范应该能够在流层次结构中找到文件。
如果文件存在,我可以尝试在父流中递归查看,使用命令
但是,如果文件“file.txt”来自具有以下映射的另一个流,则该解决方案将不起作用
如果不指定要使用的客户端(工作区),似乎无法找到此类文件(不幸的是,这在我们的环境中不是可接受的解决方案)
perforce - Perforce - 从命令行切换到工作区
我在问如何从client1切换到client2,其中client1属于stream1,client2属于stream2。
我正在寻找它与在 p4v 中执行相同的操作,然后右键单击工作区并选择“切换到工作区”
请注意,如果您当前的工作区是 client1 并且您使用:
或者
它不会更改 p4v GUI 中的工作区。
任何的想法?
谢谢!
perforce - How to efficiently work with a task stream?
Disclaimer: I let the question open, but my slow branching issue was due to the server being overloaded. So this is not the usual Perforce behavior. I now take about 30 seconds to branch 10K files.
I am a new Perforce 2014 user. I have created a stream depot, and put the legacy application (about 10,000 cpp files) in a development branch. That was relatively quick for an initial import, about 1 hour to upload everything.
Now I want to create a 'lightweight' task stream to work on a new feature. I use the default menu > new stream > type task ... I select "Branch file from parent on stream creation"
To my surprise, it takes ages (about 1 hour) to create a new task because it is branching individually every file. I would expect the process to be almost instant coming from other SCM tools. (git, svn,...)
Now my question is :
- is this the expected behavior ?
- Alternatively, is there a way to create more quickly a Task, and only branch the file I intend to modify ?
triggers - Perforce - 在触发脚本中获取流名称
如果文件属于特定流,我想创建一个触发器以防止签出文件。
我正在使用用户前编辑触发器。
触发器执行 Perl 脚本。
当我在 Perl 脚本中执行 p4 命令时,我收到此错误:
Perforce 密码 (P4PASSWD) 无效或未设置。
我所做的是从客户端名称(传递给 Perl 脚本)中获取流名称:
这不起作用。
此外,尝试将 $p4 分配给新的 P4 失败。
任何人都知道如何解决这个问题?
至少,给我一种从客户端名称中提取流名称的方法?
谢谢,
perforce - 如何完全删除 perforce 流集成
即使在我删除了最后一个变更列表之后,我的主线流仍然认为开发流需要合并,我将感谢一些帮助来解决这个问题。
简而言之:
我的主线流(名为 Main)有 2 个开发流,其中一个名为 Tintin。直到今天早些时候,从 Main 开始的所有内容都已合并到开发流中。其中一个流已经快2年没有复制到主线了,所以有很多修改的文件,需要进入主线。
使用 P4V,我选择了开发流并运行了副本 - 由于 2 年前的一些重命名(我的更改列表 81402),它停止了警告或错误所以经过一些阅读,我了解到我应该将副本的范围限制为更改列表81402,完成得很好,并导致主线流上的更改列表 124031。
但是现在 Perforce 坚持我必须先向下合并,然后才能允许我进行第二次复制到主线,结果更改列表看起来完全不像我预期的那样。
所以我在更改列表上运行了 p4 obliterate 但出现了一个小错误:
但这应该是没有路径的,就像这样
现在 perforce 说文件版本和集成已经消失(如预期的那样),但更改列表 124031 仍然存在,尽管它不包含任何文件。
我希望强制忘记有关更改列表 124031 的所有内容,这样我就可以重新将开发流再次复制到主线。
perforce - 删除带有活动客户端的流
我想删除离开公司的用户的任务流。所以我去
系统回答:
很好,我也会删除活动客户端。所以我正在寻找它:
然后什么也没给。
因此,要么我错过了一些选项,要么存在某种隐藏某些客户端的错误。这不是一个正确的问题,因为我已经删除了大量的流或客户端。
或者还有另一种强制删除的方法吗?
perforce - Perforce:如何禁用跨流访问同一文件夹
是否可以在所有流中只读特定文件夹?如果是这样,你能告诉我怎么做吗?
我试过类似的东西:
读取用户 * * //Depot/*/Unity/Assets/Scripts/Framework/...
没用。
merge - 如何在 Perforce 中仅对子目录进行流复制/合并?
我正在使用P4V。我在一个子目录(例如 code/jorge)中工作,而其他人在另一个我从不处理的子目录(例如 art/)中工作。此外,我有一个流,我可以在其中做我的个人工作。每隔一段时间,我需要将主线的更改合并到我的流中,然后将它们复制回来。但是,art/ 中的文件是大型二进制文件,即使我没有接触过它们,Perforce 也会花很长时间思考它们。有没有办法让 perforce 合并/复制我的目录(code/jorge)而不花时间尝试合并 art/?我可以告诉 P4V 只合并/复制代码目录吗?
相关但不相同的问题:Perforce 流,从合并/复制中排除文件