Git public repository naming convention (was: Re: users.txt patch)

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

 



[CC: Git-ML]

On Oct 24, 2007, at 9:51 AM, Jim Meyering wrote:
Benoit SIGOURE <tsuna@xxxxxxxxxxxxx> wrote:
On Oct 24, 2007, at 12:28 AM, Paul Eggert wrote:
Index: gnulib.html
===================================================================
RCS file: /web/gnulib/gnulib/gnulib.html,v
retrieving revision 1.13
retrieving revision 1.16
diff -p -u -r1.13 -r1.16
--- gnulib.html	22 Oct 2007 21:41:43 -0000	1.13
+++ gnulib.html	23 Oct 2007 22:22:18 -0000	1.16
@@ -57,14 +57,20 @@ You can also view the <a href="MODULES.h
 anonymous <a href='http://git.or.cz/'>Git</a>, using the following
 shell command:</p>

-<pre><samp>git clone git://git.savannah.gnu.org/gnulib.git
+<pre><samp>git clone git://git.savannah.gnu.org/gnulib
 </samp></pre>

Is there any reason why this has changed?  I learned (the hard way)
that for bare public repositories, it's better to stick to what turns
out to be more than a naming convention of `project.git'.  I don't

What are the consequences of not doing that?

You can't git-clone the remote repo because it tries to fetch the wrong URL (if the url isn't of the form `foo.git' it will try to fetch `foo/.git' which will fail).

know if these issues are only related to dumb protocols (HTTP*) or if
they also affect the Git protocol.  I can't find the relevant thread

Hmm... maybe it's http-specific?
Things seem to work fine with the git protocol.

Yeah, that's what I wondered.

on the Git ML but the thing is that it seems that several tools rely
on the fact that a repository name of the form `foo.git' implies that
it's a bare repository (and thus it doesn't need to look for a nested
.git directory).

It has always worked -- on that server, at least.
I use that form because I prefer the shorter URL:

    git clone git://git.sv.gnu.org/gnulib

In general, if you control the server repo,
you can simply add a symlink in project.git:

    .git -> ..

I suppose that avoids any such problems, but I haven't
done that on any of the savannah repositories.

Yeah well that's more of a workaround than anything else.

My guess: it works with the Git protocol, probably because git-http- fetch works differently than whatever tool does the fetch for the native Git protocol. OTOH, isn't it better to have a consistent naming? If you look at the gitweb of gnulib [ http:// git.savannah.gnu.org/gitweb/?p=gnulib.git ], it says "URL git:// git.sv.gnu.org/gnulib.git". Oddly enough, whether you add the `.git' or not doesn't seem to change anything.

The documentation (Documentation/urls.txt) only shows examples of the form `git://host.xz/path/to/repo.git/'. So do Documentation/core- tutorial.txt, Documentation/git-clone.txt and Documentation/ repository-layout.txt (among others).

Maybe the Git gurus will be able to shed some light on this issue.

Cheers,

--
Benoit Sigoure aka Tsuna
EPITA Research and Development Laboratory


Attachment: PGP.sig
Description: This is a digitally signed message part


[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