[p4] Drawing branch-diagrams code in P4 public depot?
Peter Hecht
phecht_98 at yahoo.com
Sat Oct 25 15:20:35 PDT 2008
Hello,
I have tried to do such a thing using p4 integrated and graphwiz. Haven't had great or repeatable success. Some one mentioned that the P4wiki has something like this as well.
Any code in the public depot to do the graphs?
Sincerely,
Peter Hecht
Message: 5
Date: Fri, 24 Oct 2008 08:30:09 -0700
From: "Jeff A. Bowles" <jab at pobox.com>
Subject: Re: [p4] Drawing branch-diagrams
To: "Rick Macdonald" <rickmacd at shaw.ca>
Cc: Felix Drueke <fdrueke at orga-systems.com>,
perforce-user at perforce.com
Message-ID:
<9b8625810810240830m28e99adcje35b92309cf2866d at mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1
I have had good luck with the following strategy:
1. Use "p4 integrated" to get the list of all-existing parent-child
relationships, from-file and to-file.
2. Massage that output to get rid of common endings: //depot/main/x/y/z.c
and //depot/release1/x/y/z.c should whittle down to "//depot/main" ->
"//depot/release1".
3. Eliminate the duplicate in these lists, because a branch of 1000 files
will have 1000 entries that look like "//depot/main" -> "//depot/release1".
4. Download Graphviz, which is free and runs on your platform. Make a
simple test case, and learn enough about the basic ASCII input to be able to
put the envelop information around it.
5. Make a Graphviz input from the data in #3.
6. Run Graphviz. It won't take long.
7. Note the weird times that people went off-the-road to integrate in
weird ways. (I often discard entries in step #3 that have less than 10-15
duplications because they're on-off branches or renames or ...)
It's easy, can be automated (and audited), and it is free. ( And pretty. )
-Jeff Bowles
More information about the perforce-user
mailing list