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
next 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.