首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将p4tickets与p4python结合使用

如何将p4tickets与p4python结合使用
EN

Stack Overflow用户
提问于 2018-01-11 15:07:23
回答 3查看 2.1K关注 0票数 1

有大量使用用户/pass作为凭据使用p4python连接到p4python服务器的示例,但很少描述如何使用p4ticket。目前尚不清楚如何将p4tickets文件与p4python一起使用。

EN

回答 3

Stack Overflow用户

发布于 2018-01-11 15:07:23

事实证明,绝对文档是非常非常精确的。文档基本上说,如果用户没有登录,那么您必须提供登录密码。另一方面,如果用户登录,则不需要密码。因此,例如,假设用户登录:

代码语言:javascript
复制
>>> p4 -u 'username' login

然后,在您的p4python脚本中,以下内容将连接:

代码语言:javascript
复制
p4con           = P4.P4()
p4con.user      = 'username'
p4.con.connect()

p4python连接将自然地使用~/.p4票证文件。

票数 2
EN

Stack Overflow用户

发布于 2020-08-05 14:34:10

要在P4 Python (或P4命令行)中使用票证,您只需将票证放在任何需要密码的位置即可。有了这个问题,P4从哪里获取票子的优先级问题与P4命令行的工作方式不一致。

在P4 Python中:

  1. 如果设置了环境变量P4PASSWD,则使用它。
  2. 如果在p4.ticket_file查看的任何文件中都有用户条目(来自P4TICKETS,默认的~/.p4票证,或脚本放置的值),则如果P4PASSWD未设置,则将使用该条目
  3. 如果设置了p4.password字段,则如果没有满足上述条件,则将使用该字段。

从命令行运行P4:

  1. 如果使用-P运行,则使用命令行中的票证
  2. 如果设置了P4PASSWD,则在未满足上述条件的情况下使用
  3. 如果在p4.ticket_file查看的任何文件中都有用户条目(来自P4TICKETS,缺省值为~/.p4票证,或脚本放置在其中的值),则如果上述两种条件都没有满足,将使用该条目。

示例1-如果票证文件中有条目,这将覆盖第4行p4. p4.password中设置的值和第3行中用户设置的值。如果票证文件中没有条目,它将使用所提供的凭据并更新票证文件,以便在第二次运行脚本时,它将使用该凭据而不是提供的凭据。

代码语言:javascript
复制
from P4 import P4
p4 = P4()
p4.user = user
p4.password = ticket

示例2-这将始终使用提供的凭据,因为我们实际上并没有使用真正的文件。

代码语言:javascript
复制
from P4 import P4
p4 = P4()
p4.user = user
p4.password = ticket
p4.ticket_file = '/dev/null'

tl;dr -在Perforce要求的任何地方使用该票证以获得密码。如果要在脚本中使用票证,请首先设置ticket_file='/dev/null'以确保预期的行为。

票数 0
EN

Stack Overflow用户

发布于 2022-06-16 07:20:44

run_login():使用用户设置的密码或票证运行p4登录。

代码语言:javascript
复制
from P4 import P4
 
p4 = P4()
 
p4.port = "xxx.xxx.xxx.xxx:1666"
p4.user = "xxxxx"
 
p4.connect()
p4.run_login("-s", p4.user)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48210143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档