From 4e475fcaf3f551893f76aaa73f41964290b4ceac Mon Sep 17 00:00:00 2001 From: Nao Ueda Date: Fri, 5 Feb 2021 21:33:04 +0900 Subject: Be able to treat files that have never changed. --- time-getter.pl | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/time-getter.pl b/time-getter.pl index 5335fbd..06b890d 100644 --- a/time-getter.pl +++ b/time-getter.pl @@ -5,6 +5,7 @@ use strict; open (F, 'git ls-tree -r HEAD|'); my %list; +my %all_file; # 辞書作る while () { @@ -14,6 +15,7 @@ while () { my $hash = $info[-2]; $list{$filename} = $hash; + $all_file{$filename} = 1; } close(F); @@ -46,11 +48,16 @@ while () { open (BLOBS, "git ls-tree -r $tree |"); + my %remained = %all_file; while () { my @tmp = split(/\s+/); my $filename = $tmp[-1]; my $blobhash = $tmp[-2]; + if ($remained{$filename}) { + delete $remained{$filename}; + } + if (!$list{$filename}) { next; } @@ -58,9 +65,16 @@ while () { if ($list{$filename} !~ /$blobhash/) { print $filename . ": " . $prevtimestamp . " \n"; delete ($list{$filename}); + delete ($all_file{$filename}); } } + foreach my $filename (keys(%remained)) { + print $filename . ": " . $prevtimestamp . " \n"; + delete ($list{$filename}); + delete ($all_file{$filename}); + } + $prevtimestamp = $timestamp; close (BLOBS); -- cgit v1.2.3-54-g00ecf