Perforce 命令设置变更列表描述

问题描述 投票:0回答:4

我正在寻找 Perforce 命令来在创建时、创建后或提交时更新非默认更改列表的描述。 您只能使用

p4 submit <description>
为默认更改列表设置提交时的描述。 当您尝试类似
p4 change <changelistnumber> -i <description>
之类的操作时,您将被迫编辑然后保存文本文件。 我正在寻找这样的东西(但这显然有效):

p4 change -c <changelistnumber> -d <description>
perforce
4个回答
2
投票

要提供编号变更列表的描述,“p4 change -i”是您想要的方式。

您实际上不必打开编辑器:只需根据需要提前准备一个文本文件,其中包含更改列表规范,包括修改后的描述,然后运行 'p4change -i NNN < mySpecFile.txt'.

运行“p4change-o>/tmp/change.txt”或“p4helpchange”以查看更改列表规范的整体格式。

如果您计划构建一个执行此操作的工具,您是否有首选的脚本语言(Perl/Ruby/Python/等)?如果是这样,Perforce 命令集可以非常优雅地集成到每种脚本语言中,这使得此类任务非常简单。


1
投票

您还可以使用“p4change-u”。它将打开一个文本编辑器,您可以从中更新您的描述。

文档:https://www.perforce.com/manuals/cmdref/Content/CmdRef/p4_change.html?Highlight=p4%20change

我知道 -u 选项在 2015 版及更高版本中可用。我不知道旧版本。


0
投票

您可以使用

--field
全局 Perforce 选项来执行此操作,而无需调用任何编辑器。它记录在
p4 help undoc
:

p4 --field Field=replacement_text
p4 --field Field+=extra_text
    Modify the contents of a spec returned by p4 [specname] -o.  The
    modified spec can be piped directly to another command that expects
    a formatted spec, e.g. p4 [specname] -i.

因此,如果您想更新现有变更列表的描述,并知道您想要的描述是什么,您可以运行:

p4 --field 'Description=Add the Widget to the frobulator' change -o 12345 | p4 change -u -i

0
投票

以下是一些有用的命令:

  1. 转储当前变更列表规范,您可以将其保存到文本文件中:p4 Change -o #CL > backup.txt
  2. 可以通过 sed -i 修改你的 backup.txt 以便你可以自动化
  3. p4 更改 -i < backup.txt to overwrite the existing files.
  4. p4 更改 -o #CL 来仔细检查一切是否都已完成。
© www.soinside.com 2019 - 2024. All rights reserved.