From a220a0b1a4d008422410117b24342646baee1f54 Mon Sep 17 00:00:00 2001 From: Petr Baudis Date: Fri, 27 Apr 2007 19:44:53 +0200 Subject: [PATCH] Set up refs/forkee in new forks It points to refs/ of the forkee, which should make git-receive-pack to utter haves for these refs, thus hopefully greatly reducing number of transferred objects. --- cgi/Git/RepoCGI.pm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cgi/Git/RepoCGI.pm b/cgi/Git/RepoCGI.pm index 009c9ef..48a245f 100644 --- a/cgi/Git/RepoCGI.pm +++ b/cgi/Git/RepoCGI.pm @@ -315,6 +315,7 @@ sub _alternates_setup { my $forkee_name = proj_get_forkee_name($self->{name}); my $forkee_path = proj_get_forkee_path($self->{name}); return unless -d $forkee_path; + mkdir $self->{path}.'/refs'; chmod 0775, $self->{path}.'/refs'; mkdir $self->{path}.'/objects'; chmod 0775, $self->{path}.'/objects'; mkdir $self->{path}.'/objects/info'; chmod 0775, $self->{path}.'/objects/info'; my $filename = $self->{path}.'/objects/info/alternates'; @@ -324,6 +325,7 @@ sub _alternates_setup { print X "../../../$forkee_name.git/objects\n"; close X; chmod 0664, $filename or warn "cannot chmod $filename: $!"; + symlink "../../../$forkee_name.git/refs", $self->{path}.'/refs/forkee'; } sub _group_add { -- 2.11.4.GIT