1

我需要创建一个子流,它只会从mainline(父)流中选择特定的文件夹。在创建子流时,为了实现这一点,我通过share/isolate/import成功创建子流来限制视图,这些子流只有我感兴趣的代码。

但是,我浏览了一些关于流的教程,并在轻量级流(任务流)上找到了一些东西,这些流用于部分地从父级创建流。在我的场景中,我需要真正使用它lightweight streams吗?如上所述,使用这种轻量级流而不是使用常规方法的主要优点和限制是什么?

4

1 回答 1

1

任务流的目的不是“部分地”创建流——你已经用你的share/import路径完成了这个。不要修复没有损坏的东西!

一旦相关任务完成(通过“卸载”命令),任务流被构建为短暂且易于归档的。任务流的限制在此处的文档中进行了描述:

https://www.perforce.com/perforce/doc.current/manuals/p4v/Content/P4V/streams.task.html

即他们不能重新成为父母,他们可能没有孩子。如果您将任务流用作短暂的单任务流(正如“任务流”的名称所暗示的那样,任务流用于单个任务),这些限制通常不会成为问题。如果您尝试使用任务流作为开发主线,您将会遇到问题。

如果您的开发过程涉及为短期任务创建新分支(例如,特定分支的单个修补程序),并且您有很多这些任务,任务流可能很有用,因为它们易于清理和低开销(卸载任务流时,它会从数据库中删除,这意味着您在创建和放弃它们时不会随着时间的推移积累数据库垃圾)。

如果这听起来不像您的开发过程,请忘记您曾经听说过任务流。不要试图想象可以将任务流用于非短期任务的方式。锤子适用于钉子。不要用它们来拧螺丝,尤其是当你有一把非常好的螺丝刀并且已经成功使用它时。

(你能说我见过很多人因为“听起来很酷”而尝试使用任务流来完成所有事情吗?抵制冲动!)

于 2018-02-11T18:28:35.033 回答