All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Roskin <proski@gnu.org>
To: GIT list <git@vger.kernel.org>
Subject: When to run git-update-server-info
Date: Mon, 12 Feb 2007 23:49:49 -0500	[thread overview]
Message-ID: <1171342189.2326.68.camel@dv> (raw)

Hello!

It looks like that either the documentation is misleading or git is not
working as promised.

Documentation/repository-layout.txt says:

info/refs::
        This file is to help dumb transports to discover what
        refs are available in this repository.  Whenever you
        create/delete a new branch or a new tag, `git
        update-server-info` should be run to keep this file
        up-to-date if the repository is published for dumb
        transports.  The `git-receive-pack` command, which is
        run on a remote repository when you `git push` into it,
        runs `hooks/update` hook to help you achieve this.

My understanding of the above text is that git-update-server-info only
needs to be run if a new branch or tag is created, not on every
git-push.  Just because hooks/update is run on every push, it doesn't
mean that it needs to be done every time.

What happens in reality is that git-pull refuses to pull new revisions
from the repository if git-update-server-info is not run after a simple
git-push (from another repository, of course) that didn't create any
branch or tag.  However, git-clone would load all revisions.  I'm
accessing the repository over http.

The problem it, there is more than one way to get the branch revisions,
one is from info/refs and the other is from individual files under
refs/heads and refs/tags.  Using database terms, the git repository in
not normalized, so we get an update anomaly.

I understand that accessing one file could be faster over http, so I
tend to think that it's the documentation needs to be fixed.  If that's
the case, maybe hooks/update should be created executable by default?

Alternatively, git-update-server-info functionality could be embedded
into git-receive-pack to simplify server setup.

-- 
Regards,
Pavel Roskin

             reply	other threads:[~2007-02-13  4:49 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-13  4:49 Pavel Roskin [this message]
2007-02-13  5:20 ` When to run git-update-server-info Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1171342189.2326.68.camel@dv \
    --to=proski@gnu.org \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.