From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS31976 209.132.176.0/21 X-Spam-Status: No, score=-3.4 required=3.0 tests=AWL,BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MSGID_FROM_MTA_HEADER,RP_MATCHES_RCVD shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 From: Jakub Narebski Subject: Re: kernel.org mirroring (Re: [GIT PULL] MMC update) Date: Sat, 9 Dec 2006 18:02:12 +0100 Message-ID: <200612091802.12810.jnareb@gmail.com> References: <200612091437.01183.jnareb@gmail.com> <457ACBA1.4090007@garzik.org> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit NNTP-Posting-Date: Sat, 9 Dec 2006 17:00:25 +0000 (UTC) Cc: Martin Langhoff , Git Mailing List , Linus Torvalds , "H. Peter Anvin" , Rogan Dawes , Kernel Org Admin Return-path: Envelope-to: gcvg-git@gmane.org DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:from:to:subject:date:user-agent:cc:references:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:message-id; b=rNEAfFsWHhpQwlF3ZrWrX318EDrcEUQCjhTj4RBQhCcxgrhoggHy3dLnQLQInNH5nETYAHgxrMzOue9X0fq/OskAmVdJkVk9oQlx+0eZOKP+/tpngg19NoNEIWqDtX5sxEFTBz98QLKdrLKYhYrk9EnQ1EGYkeWWlFdU3+oiXgQ= User-Agent: KMail/1.9.3 In-Reply-To: <457ACBA1.4090007@garzik.org> Content-Disposition: inline Precedence: bulk X-Mailing-List: git@vger.kernel.org Archived-At: Received: from vger.kernel.org ([209.132.176.167]) by dough.gmane.org with esmtp (Exim 4.50) id 1Gt5Ye-00039V-5I for gcvg-git@gmane.org; Sat, 09 Dec 2006 18:00:16 +0100 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S937141AbWLIRAA (ORCPT ); Sat, 9 Dec 2006 12:00:00 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S937167AbWLIQ76 (ORCPT ); Sat, 9 Dec 2006 11:59:58 -0500 Received: from ug-out-1314.google.com ([66.249.92.168]:33163 "EHLO ug-out-1314.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S937141AbWLIQ75 (ORCPT ); Sat, 9 Dec 2006 11:59:57 -0500 Received: by ug-out-1314.google.com with SMTP id 44so989333uga for ; Sat, 09 Dec 2006 08:59:56 -0800 (PST) Received: by 10.67.100.17 with SMTP id c17mr7091600ugm.1165683595827; Sat, 09 Dec 2006 08:59:55 -0800 (PST) Received: from host-81-190-25-107.torun.mm.pl ( [81.190.25.107]) by mx.google.com with ESMTP id j33sm3628301ugc.2006.12.09.08.59.54; Sat, 09 Dec 2006 08:59:55 -0800 (PST) To: Jeff Garzik Sender: git-owner@vger.kernel.org Jeff Garzik wrote: > Jakub Narebski wrote: >> As I said, I'm not talking (at least now) about saving generated HTML >> output. This I think is better solved in caching engine like Squid can >> be. Although even here some git specific can be of help: we can invalidate >> cache on push, and we know that some results doesn't ever change (well, >> with exception of changing output of gitweb). > > It depends on how creatively you think ;-) > > Consider generating static HTML files on each push, via a hook, for many > of the toplevel files. The static HTML would then link to the CGI for > further dynamic querying of the git database. You mean that the links in this pre-generated HTML would be to CGI pages? >> What can be _easily_ done: >> * Use post 1.4.4 gitweb, which uses git-for-each-ref to generate summary >> page; this leads to around 3 times faster summary page. > > This re-opens the question mentioned earlier, is Kay (or anyone?) still > actively maintaining gitweb on k.org? By the way, thanks to Martin Waitz it is much easier to install gitweb. I for example use the following script to test changes I have made to gitweb: -- >8 -- #!/bin/bash BINDIR="/home/local/git" function make_gitweb() { pushd "/home/jnareb/git/" make GITWEB_PROJECTROOT="/home/local/scm" \ GITWEB_CSS="/gitweb/gitweb.css" \ GITWEB_LOGO="/gitweb/git-logo.png" \ GITWEB_FAVICON="/gitweb/git-favicon.png" \ bindir=$BINDIR \ gitweb/gitweb.cgi popd } function copy_gitweb() { cp -fv /home/jnareb/git/gitweb/gitweb.{cgi,css} /home/local/gitweb/ } make_gitweb copy_gitweb # end of gitweb-update.sh -- >8 -- >> * Perhaps using projects list file (which can be now generated by gitweb) >> instead of scanning directories and stat()-ing for owner would help >> with time to generate projects lis page > > This could be statically generated by a robot. I think everybody would > shrink in horror if a human needed to maintain such a file. Gitweb can generate this file. The problem is that one would have to temporary turn off using index file. This can be done by having the following gitweb_list_projects.perl file: -- >8 -- #!/usr/bin/perl $projects_list = ""; -- >8 -- then use the following invocation to generate project index file: $ GATEWAY_INTERFACE="CGI/1.1" HTTP_ACCEPT="*/*" REQUEST_METHOD="GET" \ GITWEB_CONFIG=gitweb_list_projects.perl QUERY_STRING="a=project_index" \ gitweb.cgi -- Jakub Narebski