need equivalent python command for p4 describe

2019-08-04 06:55发布

I need equivalent for p4 describe #cl, in p4 python.

However, running the same command p4.run_describe("#cl") using p4python. I get dict:

[{'client': 'NonDev1408-Dev', 'digest': ['E41FFB100C73F7B443EE8DE7A0DD966C'], 'desc': 'Merging //ATTE/1507_SWP122 to OCX Main (//ATTE/1408-Dev)\n', 'type': ['text'], 'fileSize': ['33067'], 'status': 'submitted', 'rev': ['49'], 'depotFile': ['//ATTE/1408-Dev/cust/oms/bb/cord9src/src/main/java/amdocs/oms/cust/osact/foundation/NegotiateServiceConnection.java'], 'action': ['integrate'], 'user': 'mohitc', 'change': '243446', 'time': '1432731112', 'path': '//ATTE/1408-Dev/cust/oms/bb/cord9src/src/main/java/amdocs/oms/cust/osact/foundation/*', 'changeType': 'public'}]

Instead I want output like given by p4 describe 243446 that is, I want diff changes between the affected files:

Change 243446 by mohitc@NonDev1408-Dev on 2015/05/27 15:51:52

        Merging //ATTE/1507_SWP122 to OCX Main (//ATTE/1408-Dev)

Affected files ...

... //ATTE/1408-Dev/cust/oms/bb/cord9src/src/main/java/amdocs/oms/cust/osact/foundation/NegotiateServiceConnection.java#49 integrate

Differences ...

==== //ATTE/1408-Dev/cust/oms/bb/cord9src/src/main/java/amdocs/oms/cust/osact/foundation/NegotiateServiceConnection.java#49 (text) ====

Is there any other way to produce the same output using p4python?

1条回答
男人必须洒脱
2楼-- · 2019-08-04 07:42

Try this:

import P4

p4 = P4.P4()
try:
    p4.connect()
    info = p4.run("info")
    for key in info[0]:
        print key, "=", info[0][key]
    print
    print


    if 1:
        p4.tagged = 0 

        #This makes the output untagged.
        result = p4.run("describe","5707")
        print result

except P4.P4Exception, ex:
    for w in p4.warnings:
        print w

finally:
    p4.disconnect()

Hope this helps, Jen.

查看更多
登录 后发表回答