p4python 创建并提交一个新文件

p4python create and submit a new file

如何使用 p4python 创建和提交新文件?

create_and_submit_file(full_path_in_depot, new_file_text_content):
    logging.basicConfig(level=logging.INFO, format=LOG_FORMAT)
    p4 = get_p4() # implemented
    try:  # Catch exceptions with try/except
        connect_and_login_p4(p4) # implemented

        # .. implementation here .. p4.some_call() 

        LOGGER.info('done')
    except P4Exception:
        for e in p4.errors:  # Display errors
            LOGGER.error(e)

如果该文件已存在于工作区的本地文件系统中,您只需 p4.run_add(file)p4.run_submit('-d', 'this is my awesome file')

如果文件不存在,您需要创建它,如果您没有工作空间,您也需要创建它。为了简洁起见,这里是你如何从命令行完全从头开始(这直接映射到 P4Python 但我对你的环境了解不够,无法为你提供开箱即用的代码所以我不会尝试翻译):

echo "my awesome file content" > my_awesome_file
p4 set P4CLIENT=my_awesome_client
p4 --field "View=//depot/... //my_awesome_client/..." client -o | p4 client -i
p4 add my_awesome_file
p4 submit -d "this is my awesome file"

查看 p4.save_client 的示例,了解如何使用 P4Python create/modify 客户端规范并修改字段以适应您的环境(类似于我使用 --field 标志设置 View 使得 my_awesome_client 的根对应于 //depot/...):

https://www.perforce.com/perforce/r14.2/manuals/p4script/python.p4.html#python.p4.save_spectype