Re: [PATCH] git-relink: avoid hard linking in objects/info directory
From: Rafael Garcia-Suarez <hidden>
Date: 2016-06-15 22:44:09
On 29/01/2008, Brandon Casey [off-list ref] wrote:
quoted hunk ↗ jump to hunk
git-relink is intended to search for packs and loose objects in common between two repositories and to replace the one set with hard links to the other. Files other than packs and loose objects should not be touched, so add the "info" sub-directory to the pattern of directory excludes. Signed-off-by: Brandon Casey <redacted> --- git-relink.perl | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)diff --git a/git-relink.perl b/git-relink.perl index f6b4f6a..d267404 100755 --- a/git-relink.perl +++ b/git-relink.perl@@ -40,7 +40,7 @@ my $master_dir = pop @dirs; opendir(D,$master_dir . "objects/") or die "Failed to open $master_dir/objects/ : $!"; -my @hashdirs = grep !/^\.{1,2}$/, readdir(D); +my @hashdirs = grep !/^(\.{1,2}|info)$/, readdir(D);
That looks a bit fragile. If the intent is to get a list of files in $master_dir, why not simply say: my @hashdirs = grep -f, readdir(D); That will appropriately skip ., .. and any other dirs.