Mercurial > hg
view hgwebdir.cgi @ 5675:a5fe27b83a4a
Issue 882: add standard hook to reject text files with CRLF.
While the win32text extension does LF <-> CRLF conversion, and will issue a
warning in case a file already in the repository uses CRLF, it provides no
mechanism for verifying that incoming changes use LF. In a large development
team with some Windows users, it is virtually guaranteed that someone will
forget to set up the encode filter correctly and accidentally check in a file
using CRLF, which can cause warnings for other Windows users when they next
fetch changes. Since this is a general problem it is desirable to have a
pre-commit (or -push) hook available to reject such accidents earlier rather
than trying to fix them up after the fact.
author | Jesse Glick <jesse.glick@sun.com> |
---|---|
date | Wed, 19 Dec 2007 17:02:31 -0500 |
parents | d74fc8dec2b4 |
children | b913d3aacddc |
line wrap: on
line source
#!/usr/bin/env python # # An example CGI script to export multiple hgweb repos, edit as necessary # adjust python path if not a system-wide install: #import sys #sys.path.insert(0, "/path/to/python/lib") # enable importing on demand to reduce startup time from mercurial import demandimport; demandimport.enable() # send python tracebacks to the browser if an error occurs: import cgitb cgitb.enable() # 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" from mercurial.hgweb.hgwebdir_mod import hgwebdir import mercurial.hgweb.wsgicgi as wsgicgi # The config file looks like this. You can have paths to individual # repos, collections of repos in a directory tree, or both. # # [paths] # virtual/path = /real/path # virtual/path = /real/path # # [collections] # /prefix/to/strip/off = /root/of/tree/full/of/repos # # 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. # # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples # or use a dictionary with entries like 'virtual/path': '/real/path' application = hgwebdir('hgweb.config') wsgicgi.launch(application)