【问题标题】:Silently create perforce client from command line从命令行静默创建 perforce 客户端
【发布时间】:2018-05-14 09:32:57
【问题描述】:

我需要从我的 jenkins 构建脚本创建 perforce 客户端,这需要在无人值守的情况下完成。这主要是因为 jenkins 作业运行在唯一的文件夹中,Perforce 坚持每个客户端都有一个唯一的根目标文件夹,并且我们一直根据需要创建新的 jenkins 作业。现在,每次我创建一个独特的 jenkins 作业时,我都必须为该作业手动创建一个 perforce 客户端 - 我可以从命令行执行此操作,但 Perforce 还坚持暂停客户端创建以向我显示规范设置文件,该文件我需要在客户端创建之前手动关闭。

创建我正在使用的客户端

p4 -u myuser -P mypassword client -S //mydepo/mystream someclientname

我正在使用这个可怕的黑客同时杀死记事本

p4 -u myuser -P mypassword client -S //mydepo/mystream someclientname | taskkill /IM notepad.exe /F

这种方法有效,但感觉不对。有没有官方/更好的方法可以强制 p4 静默强制创建客户端?

【问题讨论】:

    标签: jenkins perforce


    【解决方案1】:

    这样做:

    p4 -u user -P ticket client -S //depot/stream -o someclientname | p4 -u user -P ticket client -i
    

    【讨论】:

    • 感谢@sam-stafford,做到了。我更改了 -o 开关的位置,P4 希望它严格遵循流名称。
    【解决方案2】:

    您可以预先准备客户表格并通过以下方式传递路径:

    p4 client -i newClientForm.txt
    

    我猜你可以在调用p4 client之前有一个脚本来准备这样的文件。

    查看每次弹出的默认表单。

    不过,我不知道您如何处理同时传递 -S-i 两个选项。

    【讨论】:

    • 是的,这是正确的方法。首先使用这种技术创建客户端,然后将其切换到有问题的流。如果您这样做,则不会提示您输入任何表单。
    • 恐怕这太复杂了——我不想维护一个包含客户信息的文本文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-02
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    • 2020-04-06
    • 2010-10-30
    • 1970-01-01
    相关资源
    最近更新 更多