Re: [PATCH 1/2] gitweb: Always use git-peek-remote in git_get_references
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Sep 20, 2006, 18:13 UTC
- Message-ID
- <200609202013.38457.jnareb@gmail.com>
- In-Reply-To
- <7v64fijz90.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano wrote:
Show 17 quoted lines
> Jakub Narebski <jnareb@gmail.com> writes: > > > Instead of trying to read info/refs file, which might not be present > > (we did fallback to git-ls-remote), always use git-peek-remote in > > git_get_references. > > > > It is preparation for git_get_refs_info to also return references > > info. We cannot use info/refs for git_get_refs_info as the information > > contained therein is usually stale. > > What the patch does is sane, but I think the last sentence of > the proposed log message is not. If info/refs is "usually > stale", it is a bug in the repository to have such a stale file. > > The real reason for this patch is that a repository served by > gitweb is not necessarily meant to be fetched over HTTP and > info/refs does not have to be there.
If the repository served by gitweb is updated using push, then info/refs updated using post-update hook is up-to-date. If repository is "live" repository, updated also using commit, rebase and such, info/refs is usually stale.
If there were post-commit hook, and it's contents was the default post-update hook, info/refs would be never stale. And we could read from into/refs, and fallback to git-peek-remote if it doesn't exist... but we don't know if info/refs has current info.
-- Jakub Narebski Poland