Python与P4V:自动化变更列表描述

0 投票
3 回答
1841 浏览
提问于 2025-04-17 02:47

我有一个变量,叫做 fulltext,里面存着我想用来描述新变更列表的完整文本。在默认的变更列表中已经有一些文件了。

我想用 Python 来把这个新变更列表的描述(基于默认的)填充为 fulltext 里的内容。

我该怎么做呢?我试过这样:

os.sytem("p4 change -i")
print fulltext

但是这样并没有创建任何新的变更列表。我不知道怎么告诉 p4 我已经编辑完描述了。

3 个回答

0

在命令行中,这个方法可以用,实际上你可以在任何编程语言中使用。

这个命令的意思是:用“Change:new\nClient:myclient\nUser:me\nStatus:new\nDescription:test”这段文字作为输入,发送给 p4 change -i 这个命令。

1

如果你知道自己要修改哪些变更列表的编号,那就最简单了。

    #changeListIDNumber is the desired changelist to edit

    import P4
    p4 = P4.connect()
    cl = p4.fetch_changelist(changeListIDNumber)
    cl['Description'] = 'your description here'
    p4.save_change(cl)

如果你把这个用作默认的变更列表,而且没有提前在描述里填任何东西,那么就会出错,因为在你的变更列表字典里没有“描述”这个键。

2

如果你想写一些能和Perforce一起工作的Python程序,P4Python可能会对你有帮助。你可以在这里找到相关信息:http://www.perforce.com/perforce/doc.current/manuals/p4script/03_python.html

撰写回答