##// END OF EJS Templates
cvsps: recognize and eliminate CVS' synthetic "file added" revisions.
cvsps: recognize and eliminate CVS' synthetic "file added" revisions.

File last commit:

r7526:b7d4db95 default
r7862:02981000 1.2.1 default
Show More
hgwebdir.cgi
67 lines | 2.2 KiB | text/plain | TextLexer
mpm@selenic.com
Add a multi-repository server...
r941 #!/usr/bin/env python
#
# An example CGI script to export multiple hgweb repos, edit as necessary
Benoit Boissinot
cgi: sys.path.insert should be before importing mercurial...
r5244 # adjust python path if not a system-wide install:
#import sys
#sys.path.insert(0, "/path/to/python/lib")
Thomas Arendsen Hein
Enable demandimport only in scripts, not in importable modules (issue605)...
r5197 # enable importing on demand to reduce startup time
from mercurial import demandimport; demandimport.enable()
Maxim Dounin
hgweb: disable cgitb by default
r6080 # Uncomment to send python tracebacks to the browser if an error occurs:
#import cgitb
#cgitb.enable()
mpm@selenic.com
Add a multi-repository server...
r941
Thomas Arendsen Hein
hgweb.cgi and hgwebdir.cgi fixes/cleanups for user configurable parts:...
r3868 # If you'd like to serve pages with UTF-8 instead of your default
# locale charset, you can do so by uncommenting the following lines.
# Note that this will cause your .hgrc files to be interpreted in
# UTF-8 and all your repo files to be displayed using UTF-8.
#
#import os
#os.environ["HGENCODING"] = "UTF-8"
Eric Hopper
This patch make several WSGI related alterations....
r2506 from mercurial.hgweb.hgwebdir_mod import hgwebdir
import mercurial.hgweb.wsgicgi as wsgicgi
mpm@selenic.com
Add a multi-repository server...
r941
Vadim Gelfer
hgwebdir: export collections of repos...
r1829 # The config file looks like this. You can have paths to individual
# repos, collections of repos in a directory tree, or both.
#
mpm@selenic.com
Add a multi-repository server...
r941 # [paths]
Patrick Mezard
hgweb: extend [paths] syntax to match repositories recursively (issue852)...
r7450 # virtual/path1 = /real/path1
# virtual/path2 = /real/path2
# virtual/root = /real/root/*
# / = /real/root2/*
Benoit Allard
hgweb: recurse down collections only if ** in [paths]...
r7523 # virtual/root2 = /real/root2/**
Vadim Gelfer
hgwebdir: export collections of repos...
r1829 #
# [collections]
# /prefix/to/strip/off = /root/of/tree/full/of/repos
#
Patrick Mezard
hgweb: extend [paths] syntax to match repositories recursively (issue852)...
r7450 # paths example:
#
# * First two lines mount one repository into one virtual path, like
# '/real/path1' into 'virtual/path1'.
#
Benoit Allard
hgweb: recurse down collections only if ** in [paths]...
r7523 # * The third entry mounts every mercurial repository found in '/real/root'
# in 'virtual/root'. This format is preferred over the [collections] one,
Benoit Allard
fix typo
r7526 # since using absolute paths as configuration keys is not supported on every
Benoit Allard
hgweb: recurse down collections only if ** in [paths]...
r7523 # platform (especially on Windows).
Patrick Mezard
hgweb: extend [paths] syntax to match repositories recursively (issue852)...
r7450 #
Benoit Allard
hgweb: recurse down collections only if ** in [paths]...
r7523 # * The fourth entry is a special case mounting all repositories in
Patrick Mezard
hgweb: extend [paths] syntax to match repositories recursively (issue852)...
r7450 # /'real/root2' in the root of the virtual directory.
#
Benoit Allard
hgweb: recurse down collections only if ** in [paths]...
r7523 # * The fifth entry recursively finds all repositories under the real root,
# and mounts them using their relative path (to given real root) under the
# virtual root.
#
Vadim Gelfer
hgwebdir: export collections of repos...
r1829 # collections example: say directory tree /foo contains repos /foo/bar,
# /foo/quux/baz. Give this config section:
# [collections]
# /foo = /foo
# Then repos will list as bar and quux/baz.
Thomas Arendsen Hein
hgweb.cgi and hgwebdir.cgi fixes/cleanups for user configurable parts:...
r3868 #
Thomas Arendsen Hein
Documented passing list or dict instead of config file in hgwebdir.cgi
r1144 # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples
# or use a dictionary with entries like 'virtual/path': '/real/path'
Thomas Arendsen Hein
Backed out changeset b913d3aacddc (see issue971/msg5317)
r6141 application = hgwebdir('hgweb.config')
wsgicgi.launch(application)