Re: [PATCH] cvsserver: Add support for packed refs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Thu, 17 Jul 2008, Lars Noschinski wrote:

> req_update still parses /refs/heads manually. Replace this by
> a call to show-ref.
> 
> Signed-off-by: Lars Noschinski <lars@xxxxxxxxxxxxxxxxxxxx>
> ---
>  git-cvsserver.perl |   25 +++++++++----------------
>  1 files changed, 9 insertions(+), 16 deletions(-)
> 
> diff --git a/git-cvsserver.perl b/git-cvsserver.perl
> index b00d1c2..0e4f5f9 100755
> --- a/git-cvsserver.perl
> +++ b/git-cvsserver.perl
> @@ -947,24 +947,17 @@ sub req_update
>      # projects (heads in this case) to checkout.
>      #
>      if ($state->{module} eq '') {
> -	my $heads_dir = $state->{CVSROOT} . '/refs/heads';
> -	if (!opendir HEADS, $heads_dir) {
> -	    print "E [server aborted]: Failed to open directory, "
> -	      . "$heads_dir: $!\nerror\n";
> -	    return 0;
> -	}
> -        print "E cvs update: Updating .\n";
> -	while (my $head = readdir(HEADS)) {
> -	    if (-f $state->{CVSROOT} . '/refs/heads/' . $head) {
> -	        print "E cvs update: New directory `$head'\n";
> -	    }
> -	}
> -	closedir HEADS;
> -	print "ok\n";
> -	return 1;
> +        my $showref = `git show-ref --heads`;
> +        for my $line (split '\n', $showref) {
> +            if ( $line =~ m% refs/heads/(.*)$% ) {
> +                print "M $1\t$1\n";

In the removed part, I see that this changes behaviour from "E cvs update: 
..." to "M ...".

I do not know the CVS protocol well enough to know if that is still 
correct.

BTW from the removed part, it seems that the indentation was done with 
tabs formerly, and with spaces now; please use tabs instead.

Thanks,
Dscho
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux