File: git.README.Debian

package info (click to toggle)
git 1%3A1.7.2.5-3
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 18,036 kB
  • ctags: 13,298
  • sloc: ansic: 108,217; sh: 74,973; perl: 23,370; tcl: 20,137; python: 3,843; makefile: 2,885; lisp: 1,779; asm: 98
file content (72 lines) | stat: -rw-r--r-- 2,725 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
Git for Debian
--------------

When setting up a git.example.org server, there are several things to
configure to make everything work nicely together.  All this is optional.

1. Run a git-daemon.  This allows people to use a git:// URL to access your
repositories.  This package provides the git-daemon program, to enable a
git-daemon service, configure inetd(8) to launch it on demand, or install the
git-daemon-run package to run it permanently:
 cat >> /etc/inetd.conf <<EOF
git stream tcp4 nowait nobody /usr/bin/git git daemon --inetd --base-path=/srv/git
git stream tcp6 nowait nobody /usr/bin/git git daemon --inetd --base-path=/srv/git
EOF

Or:
 apt-get install git-daemon-run

Wait five seconds for the service to be picked up, and check its status and
logs:

 sv stat git-daemon
 cat /var/log/git-daemon/current

The git daemon by default looks into the directory /var/cache/git/ for
repositories (this is configured in /etc/sv/git-daemon/run).  It expects
the repositories' .git subdirectories in /var/cache/git/, symlinks pointing
to the corresponding subdirectories in the repositories are just fine, e.g.:

 ln -s ~pape/git/foo/.git /var/cache/git/foo.git

Now git-clone git://git.example.org/git/repo will work.

2. Install rsync.  This allows people to use rsync:// URLs to access your
repositories.  You then need to add a stanza to /etc/rsyncd.conf that looks
like this:

[git]
    path = /var/cache/git
    readonly = yes

Now git-clone rsync://git.example.org/git/repo will work.

3. Configure a web server for git.  This allows people to use a http:// URL
to access your repositories.

Here's an example for an apache virtual server.  Add a stanza to your apache
configuration that looks like this:

<VirtualHost *:80>
    ServerName git.example.org
    ServerAdmin webmaster@example.org
    HeaderName HEADER
    # bogus but safe DocumentRoot
    DocumentRoot /var/cache/git
    ErrorLog /var/log/apache-ssl/git.example.org-error.log
    CustomLog /var/log/apache-ssl/git.example.org-access.log combined
    Alias /robots.txt /var/www/cvs.robots.txt
    Alias /gitweb.css /usr/share/gitweb/gitweb.css
    Alias /gitweb.js /usr/share/gitweb/gitweb.js
    Alias /git-favicon.png /usr/share/gitweb/git-favicon.png
    Alias /git-logo.png /usr/share/gitweb/git-logo.png
    Alias /git /var/cache/git
    ScriptAlias / /usr/lib/cgi-bin/gitweb.cgi
    RedirectMatch permanent "^/~(.*)$" "http://example.org/~$1" 
</VirtualHost>

Now git-clone http://git.example.org/git/repo will work.  And if you
installed the gitweb package, http://git.example.org/ now will display a
list of repositories, making them accessible through a web browser.

 -- Gerrit Pape <pape@smarden.org>  Fri, 15 Sep 2006 09:19:37 +0000