问题标签 [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.

0 投票
2 回答
1433 浏览

perforce - Perforce 创建流库的权限?

是否可以让我的用户创建 Perforce软件仓库而不给他们任何地方的超级访问权限?

我刚刚升级到 Perforce Server 2011.1,我渴望使用新的功能。

如果我理解正确,流有几个限制:1)流必须在特殊的库中,2)流库在其顶层包含分支。

我们目前有一个包含多个项目的本地仓库(称为“mylocaldepot”)。鉴于上述限制并与 Perforce 文档中显示的实践保持一致,“每个项目一个流库”似乎更明智。但是创建 depot 需要超级访问权限。如果我们的用户可以自己为他们的项目自由创建流库,那将更加方便。但我不想让每个人在任何地方都不受限制地超级访问。而且我不希望他们意外删除我们现有的本地仓库。

是否可以设置 Perforce 权限,使用户只能被授予创建库的能力?也许我可以使用p4 protect这样的权限设置组合?

顺便说一句:我发现关于流的最佳信息是这两个视频:Streams 简介Streams for Codeline Management;和本文档:Perforce Streams 采用指南

0 投票
2 回答
2320 浏览

perforce - Perforce 在 Stream Depot 中创建新文件夹

我有一个 Stream Depot - depot

我在我创建的那个仓库中有一个名为 ProductGizmo 的流

所以在 P4V 中,我看到 Gizmo 位于仓库下 - 即仓库/ProductGizmo

我现在想让 ProductGizmo 存在于一个名为 ClientAcme 的文件夹下——这样我就想看到 depot/ClientAcme/ProductGizmo。这严格用于仓库的组织。ClientAcme 不是流。

但是当我去 File > New > Folder - 文件夹是灰色的。

文件夹在 Stream Depot 中没有意义吗?

如何在流库中移动/组织流

0 投票
1 回答
581 浏览

perforce - 归档/导出 Perforce 流

我有一个 perforce 流

我想将此流存档并在项目结束时将其提供给其他人(客户端),以便他们可以将流导入他们自己的 perforce 服务器。

这可以做到吗?流可以从一个 serverA/depot1 导出,然后导入 SomeOtherServer/SomeOtherDepot。

0 投票
4 回答
7910 浏览

perforce - Perforce:将未提交的更改移动到不同的流

Perforce 中是否有一种好方法可以在提交之前将未提交的更改移动到不同的流(相当于git stash, git checkout otherbranch, git stash pop)?

我目前已在本地(非排他地)签出文件并进行了编辑。我尝试搁置它们,然后尝试将它们取消搁置到目标流中,但我得到“文件不在客户端视图中”。当我查看更改列表(搁置与否)时,文件都具有包含原始流的路径。

我的目标流是我刚刚创建的,是原始流的父级。我正在使用P4V。我安装的 Perforce Visual Components 版本是 123.57.9578,当我从命令行运行 p4 时,它显示“Server 2012.2/551823”。如有必要,我可以添加更多信息。

0 投票
2 回答
614 浏览

command-line - Perforce 中的命令行语法

我们的一位管理员,恰好在 Perforce 中创建了我们所有的发布流的管理员恰好不在城里。(我们刚刚开始使用该工具)为了帮助锁定我们的内容,我们在发布流中选择了以下两项: - 锁定(只有流所有者可以编辑流设置) - 将文件提交到仅限流所有者的流

本质上,我们根据需要为人们提供访问权限。因此,今天出现了这种需求,即使我们是超级用户/管理员,我们也无法在发布流中删除上述设置。我对 Perforce 命令的命令行语法一点也不熟悉,但我会想一些类似的东西

p4 stream -f //depot/stream_name owner=newuser

如果有人有建议或可以指出实际解释如何格式化命令的文档的方向,我意识到我的语法很遥远。

谢谢

0 投票
1 回答
1152 浏览

perforce - 使用 Perforce,在具有权限的多个项目中共享文件

我使用 Perforce 来管理多个 Web 应用程序。所有应用程序共享通用前端文件(css、JS 和 java velocity 代码)。我想创建一个香草应用程序并与其他应用程序共享文件。开发人员将无法在子应用程序中编辑这些文件(类似于 p4 流导入),但是当它们同步到应用程序时,它将拉下应用程序文件和(副本)共享文件。编辑这些文件只会发生在原版应用程序中。

我一直在尝试通过流来获得解决方案来工作。问题(与标准工作区映射一样)是我无法将文件映射到许多地方。

我已经将我的香草应用程序构建为主流(它本身就是来自 perforce 中不同位置的工具的集合体)。然后,我使用 Share 和 Import 的组合为每个应用程序创建了 Development 分支。必须创建一个工作空间来匹配每个流。

更复杂的是,每个应用程序都有四个环境(dev、qa、stage、live)。我没有看到解决这个问题的明确路径。

什么对我们不起作用:

  • HTTP 分发。我们最初通过网络调用共享我们的 js 资源,但是当网站关闭时,这会带来问题。我们希望将 JS 文件(通过 p4)作为 LOCAL 文件分发。
  • 编译的 JAR。这些共享文件会经常更改,并且没有编译代码。这是一个解决方案,但没有一个是想要的。

我们是流的新手,并且习惯于为整个仓库使用一个工作区。也许我只需要放弃它?

0 投票
1 回答
401 浏览

configuration - Perforce Streams:选择性复制到 Main

我们利用流来管理我们在 Perforce 中的代码。当我们将工作转移到以后的版本时,作为我们控制的一部分,我们遇到了问题,要求我们在复制到主流之前有一个与版本相关的有效/批准的工件,然后继续削减发布流。

在 Perforce 中,当您将代码从开发流复制到主流时,有没有办法取消选择更改列表?当我尝试它时,似乎我可以取消选择特定的更改列表,通常是最后添加的几个,但 Perforce 似乎不允许取消选择某些列表,我猜测文件更改是否包含在以后对同一文件的更改中。

有选择性地移动这些变更集的好方法吗?

0 投票
1 回答
694 浏览

perforce - Perforce Streams - 隔离导入的库

我需要一些关于我在使用 Perforce Streams 时遇到的用例的指导。假设我有以下结构:

ProductA_Main从中导入代码Component1_Release-1_0。每当Component1_Release-1_0更新时,它将自动可用ProductA(但只读)。

现在。我遇到的问题是,由于ProductA_Release-1_0继承自Main并因此也导入Component1_Release-1_0,因此对组件所做的任何代码或更改都会立即影响ProductA发布。这种副作用似乎非常危险。

有没有办法隔离代码,以便在发布流中跟踪所有代码更改(甚至是导入的代码),并且其他流库的副作用为 0,但对于主流和开​​发流,代码是进口的。这样,发布将有 0 副作用,而 main 和 dev 可以方便地导入在 depot 中所做的任何更改。

我知道一种选择是在软件仓库中创建某种特定于产品的发布流Component1,但这似乎有点混乱,因为Component1不需要对ProductA.

0 投票
2 回答
1814 浏览

perforce - Perforce 流,从合并/复制中排除文件

我有以下 perforce 流结构:分支和 2 个开发分支链接到它dev_v1dev_v2。两个开发流都有一些版本特定变量所在的构建控制文件。这些文件中的任何更改都将反映在 Perforce Streams Graph 中,系统会要求我将它们合并到 main 中,然后从 main 合并到其他开发分支中。

如何在 Perforce 中排除特定文件集,以便在发生任何更改时系统不会显示流之间的任何差异,并且不会要求合并/复制它们。

0 投票
1 回答
372 浏览

perforce - Perforce 流视图导入路径带文件扩展名

我现在有 2 个流,在我的第二个流中,我想根据文件扩展名从另一个流中导入某些文件。

如果我使用以下语句进行设置:

它成功地将所有文件导入到正确的位置,但它去除了文件扩展名。例如,我在此路径的第二个流中有一个文件:

哪个应该导入为:

而是变成:

我究竟做错了什么?