~loggerhead-team/loggerhead/trunk-rich

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
LOGGERHEAD
==========

Loggerhead is a web viewer for bazaar branches.  It can be used to navigate
a branch history, annotate files, perform searches... all the usual things.

This is a TurboGears (http://www.turbogears.org) project.  It can be
started by running the 'start-loggerhead.py' script.

If you're not familiar with turbogears, the easiest way to get this script
started is to run it via::

    $ nohup ./start-loggerhead.py &
    
and add the following lines to your apache configuration::

    <Location "/branches/">
        ProxyPass http://127.0.0.1:8080/
        ProxyPassReverse http://127.0.0.1:8080/
    </Location>
    
The port configuration is in "dev.cfg".

The config file is "loggerhead.conf".  In there, you can configure projects,
and branches per project.  The idea is that you could be publishing several
(possibly unrelated) projects through the same loggerhead instance, and 
several branches for the same project.


CACHES
------

To speed up most operations, loggerhead will start creating two caches per
branch when it first launches:

    - a revision data cache
    - a text searching cache

You can put the cache folder anywhere, but I find that a folder under
the branch's .bzr/ folder is the simplest place.

The caches for a branch with 10,000 revisions take about 15 minutes each
on my machine, but YMMV.  Once they are built, they update every six hours
or so but usually finish quickly (or instantly) after the initial creation.
Until the revision cache is built, all operations will be slow.

You may update the bazaar branch at any time (for example, from a cron).
Loggerhead will notice and refresh, and bazaar uses its own branch locking
to prevent corruption.


SUPPORT
-------

This is loosely based on bazaar-webserve, which was loosely based on hgweb.
Discussion should take place on the bazaar-dev mailing list.