python - 如何获取P4Python中的变化类型

标签 python perforce p4python

我正在尝试使用 P4Python,并希望找到一种方法来检查更改列表中每个文件的更改类型。 我的意思是,我想知道这是否是修改,或者该文件是否标记为添加标记为删除

我的代码是这样的

    p4.connect()
    clientSpec = p4.fetch_client()
    depotList = p4.run_opened("-c", changelistNumber)
    p4.disconnect()

因此,我在更改列表中有文件列表,现在我可以迭代它们,并且我希望删除那些标记为删除的文件。

非常感谢您的帮助!

最佳答案

p4.run_opened 的结果是一个数组,其中包含每个打开的文件的映射。 该 map 有以下键:

'haveRev'
'rev'
'clientFile'
'client'
'user'
'action'
'type'
'depotFile'
'change'

为了找出更改的类型,请迭代数组并询问每个项目的“操作”。在我当前的一个更改列表中,打开第一个文件进行“编辑”:

import P4
p4 = P4.P4()
p4.connect()
p4.run_opened()[0]['action']
p4.disconnect()

将返回:“编辑”

关于python - 如何获取P4Python中的变化类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12494930/

相关文章:

python - 如何向 RetrievalQA.from_chain_type 添加内存?或者,如何向 ConversationalRetrievalChain 添加自定义提示?

version-control - Perforce - 如何从搁置的更改列表中删除文件?

python - P4Python 问题 : p4run ("files", 'path' )返回 - 没有这样的文件,尽管返回 "dirs"的单个项目字典

python - pynput 不发送 ctrl+c 来复制选中的文本

python - 如何判断一个容器是否无限递归并找到它的最小唯一容器?

c++ - cygwin下的ld无法找到存在的库

perforce - 如何在同步 p4 流时排除目录

p4python fetch_、run_ 和 save_ 命令

python - 为什么 P4Python 无法识别 P4CONFIG 设置?

python - 在python中使用BeautifulSoup提取id以特定字符串开头的元素