【问题标题】:How to create Multiple Uses in Perforce如何在 Perforce 中创建多种用途
【发布时间】:2022-11-03 23:57:15
【问题描述】:

有没有办法我们(超级管理员)可以在 Perforce 中使用他们的电子邮件地址创建多个用户,无论是使用命令行还是使用脚本(python 或 shell)?

Shell 脚本将是首选。

【问题讨论】:

    标签: perforce


    【解决方案1】:

    使用p4 user -o 命令输出用户规范,并使用p4 user -i(如果您的服务器配置为需要超级用户权限来创建新用户,则使用-f 标志)来保存它。

    电子邮件地址默认为user@client,因此在不实际编辑表单的情况下设置电子邮件地址的一种简单方法是通过@987654325 将电子邮件域指定为客户端名称(您不需要创建实际的客户端规范) @ 全局标志,例如:

    C:Perforce	est>p4 -c gmail.com user -o fred
    # A Perforce User Specification.
    #
    #  User:        The user's user name.
    #  Type:        Either 'service', 'operator', or 'standard'.
    #               Default: 'standard'. Read only.
    #  Email:       The user's email address; for email review.
    #  Update:      The date this specification was last modified.
    #  Access:      The date this user was last active.  Read only.
    #  FullName:    The user's real name.
    #  JobView:     Selects jobs for inclusion during changelist creation.
    #  Password:    If set, user must have matching $P4PASSWD on client.
    #  AuthMethod:  'perforce' if using standard authentication or 'ldap' if
    #               this user should use native LDAP authentication.
    #  Reviews:     Listing of depot files to be reviewed by user.
    
    User:   fred
    
    Email:  fred@gmail.com
    
    FullName:       fred
    

    将此输出传送到p4 user -i -f 可以保存用户规范:

    C:Perforce	est>p4 -c gmail.com user -o fred | p4 user -i -f
    User fred saved.
    
    C:Perforce	est>p4 users fred
    fred <fred@gmail.com> (fred) accessed 2022/09/21
    

    如果你需要编辑实际的表单(例如设置FullName),你总是可以使用像sed这样的文本编辑工具,但更简单的选择是使用内置的--field全局标志,它可以让你在命令输出中设置单个规范字段:

    C:Perforce	est>p4 --field Email=fred@bedrock.gov --field "FullName=Fred Flintstone" user -o fred
    User:   fred
    
    Type:   standard
    
    Email:  fred@bedrock.gov
    
    Update: 2022/09/21 08:50:34
    
    Access: 2022/09/21 08:50:34
    
    FullName:       Fred Flintstone
    
    AuthMethod:     perforce
    

    同样,要实际保存用户规范,您只需将其传送到p4 user -i

    C:Perforce	est>p4 --field Email=fred@bedrock.gov --field "FullName=Fred Flintstone" user -o fred | p4 user -if
    User fred saved.
    
    C:Perforce	est>p4 users fred
    fred <fred@bedrock.gov> (Fred Flintstone) accessed 2022/09/21
    

    【讨论】:

    • 非常感谢@Samwise,非常感谢。但是,如何使用相同的命令将相同的用户添加到 P4 组?
    • 使用p4 group 编辑组,就像使用p4 user 编辑用户一样。
    • 是否可以使用上面提到的命令 p4 group &lt;group_name&gt; --field "Users=&lt;user.name&gt;" 管道 p4 --field Email=fred@bedrock.gov --field "FullName=Fred Flintstone" user -o fred | p4 user -if
    • 是的,这绝对是可能的。当您发布这些问题时,您应该直接说出您想要做什么,而不是先问问题的前半部分,然后在评论中询问后半部分。 :)
    猜你喜欢
    • 2019-08-22
    • 2011-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多