#!/usr/local/bin/perl
open(FILES, "p4 -s files //...|") || die "open(FILES...)";
my $sts = 0;
while (<FILES>)
{
if (/^error: /) { print; $sts = 1; next; }
elsif (/^exit: /) { }
elsif (/^info: (\/\/.*)#\d+ - \w+ (default ){0,1}change (\d+ ){0,1}\([\w+]+\)$/)
{
&do_path($1);
}
else
{ die "assert: unparsed info line:\n$_"; }
}
exit $sts;
my %d;
my $N = 0;
sub do_path
{
my ($p) = @_;
$p =~ s/\/[^\/]+$//;
if ($p eq "/") { return; }
if (defined($d{$p})) { return; }
$d{$p} = 1;
&do_path($p);
print "$p\n";
}
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #2 | 1105 | Richard Geiger |
Handle degenerate output in depots (like the p4-demo depot!) with oddly converted db information; i.e., lines of the form: //depot/main/jam/hash.h#2 - edit default change (text) |
||
| #1 | 1104 | Richard Geiger |
Add handy "p4tree" fix typo in "p4mon" |