viewvc安装配置

系统:ubuntu 8.04
在这里我认为你已经安装了Subversion和apache,可以看这里参见 subversion apache 安装配置

Viewvc安装

1. viewvc需要的环境
    For CVS Support: 

      * Python 1.5.2 or later
          (http://www.python.org/)
      * RCS, Revision Control System
          (http://www.cs.purdue.edu/homes/trinkle/RCS/)
      * GNU-diff to replace diff implementations without the -u option
          (http://www.gnu.org/software/diffutils/diffutils.html)
      * read-only, physical access to a CVS repository
          (See http://www.cvshome.org/ for more information)

    For Subversion Support:

      * Python 2.0 or later
          (http://www.python.org/)
      * Subversion, Version Control System, 1.3.1 or later
          (binary installation and Python bindings)
          (http://subversion.tigris.org/)

安装所需包:
apt-get install python-subversion
apt-get install python-pygments


2. 安装viewvc
tar zxvf viewvc-1.1.2.tar.gz
cd viewvc-1.1.2
./viewvc-install

两次回车安装到/usr/local/viewvc-1.1.2
Installation path [/usr/local/viewvc-1.1.2]: 
DESTDIR path (generally only used by package maintainers) []:


3. 配置(viewvc.conf)
vi /usr/local/viewvc-1.1.2/viewvc.conf

简单配置只需更改root_parents
enable_syntax_coloration = 1 #语法高亮
allowed_views = annotate, diff, markup, roots, co, tar #允许的视图

Edit <VIEWVC_INSTALLATION_DIRECTORY>/viewvc.conf for your specific 
   configuration.  In particular, examine the following configuration options:

      cvs_roots (for CVS)
      svn_roots (for Subversion)
      root_parents (for CVS or Subversion)#所有svn版本库的根目录
      default_root
      root_as_url_component
      rcs_dir
      mime_types_files

   There are some other options that are usually nice to change. See
   viewvc.conf for more information.  ViewVC provides a working,
   default look. However, if you want to customize the look of ViewVC
   then edit the files in <VIEWVC_INSTALLATION_DIRECTORY>/templates.
   You need knowledge about HTML to edit the templates.


4. http访问

a) 整合apache(需要mod_cgi)
假设你已经建立了一个虚拟机配置文件
vi /etc/apache2/sites-enabled/svn.sends.cc.conf

</VirtualHost>前加入
##############
    ScriptAlias /viewvc /usr/local/viewvc-1.1.2/bin/cgi/viewvc.cgi
    ScriptAlias /query /usr/local/viewvc-1.1.2/bin/cgi/query.cgi
        <Directory "/usr/local/viewvc-1.1.2/bin/cgi">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
############## 

/etc/init.d/apache2 restart


或拷贝viewvc.cgi到apache的cgi-bin目录下通过http://10.3.37.110/cgi-bin/viewvc.cgi访问
假设我的cgi-bin目录指向/usr/lib/cgi-bin/
cp /usr/local/viewvc-1.1.2/bin/cgi/* /usr/lib/cgi-bin/
/etc/init.d/apache2 restart


或用apache的mod_python。把/usr/local/viewvc-1.1.2/bin/mod_python/*拷贝到你需要的地方访问viewvc.py。因为有个.htaccess文件,请注意“AllowOverride All”设置。

有access control的apache配置(推荐)
假设你已经建立了一个虚拟机配置文件
vi /etc/apache2/sites-enabled/svn.sends.cc.conf

</VirtualHost>前加入
##############
    ScriptAlias /viewvc /usr/local/viewvc-1.1.2/bin/cgi/viewvc.cgi
    ScriptAlias /query /usr/local/viewvc-1.1.2/bin/cgi/query.cgi
        <Directory "/usr/local/viewvc-1.1.2/bin/cgi">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
      <Location /viewvc>
#        AllowOverride None
        AuthUserFile /etc/apache2/dav_svn.passwd
        AuthName "Viewvc Of Sendslab"
        AuthType Basic
        require valid-user
      </Location>
##############

创建访问用户
htpasswd -m /etc/apache2/dav_svn.passwd test


b) 用viewvc自带standalone.py提供http访问
/usr/local/viewvc-1.1.2/bin/standalone.py -h 10.3.37.110 -d -c /usr/local/viewvc-1.1.2/viewvc.conf

standalone.py帮助
root@soft:~# /usr/local/viewvc-1.1.2/bin/standalone.py --help
ERROR: option --help not recognized

Usage: standalone.py [OPTIONS]

Run a simple, standalone HTTP server configured to serve up ViewVC
requests.

Options:

  --config-file=PATH (-c)    Use the file at PATH as the ViewVC configuration
                             file.  If not specified, ViewVC will try to use
                             the configuration file in its installation tree;
                             otherwise, built-in default values are used.
                             (Not valid in GUI mode.)
                             
  --daemon (-d)              Background the server process.
  
  --host=HOST (-h)           Start the server listening on HOST.  You need
                             to provide the hostname if you want to
                             access the standalone server from a remote
                             machine.  [default: localhost]

  --port=PORT (-p)           Start the server on the given PORT.
                             [default: 49152]

  --repository=PATH (-r)     Serve up the Subversion or CVS repository located
                             at PATH.  This option may be used more than once.

  --script-alias=PATH (-s)   Specify the ScriptAlias, the artificial path
                             location that at which ViewVC appears to be
                             located.  For example, if your ScriptAlias is
                             "cgi-bin/viewvc", then ViewVC will be accessible
                             at "http://localhost:49152/cgi-bin/viewvc".
                             [default: viewvc]
  
  --gui (-g)                 Pop up a graphical interface for serving and
                             testing ViewVC.  NOTE: this requires a valid
                             X11 display connection.


更多详细设置参考:INSTALL和 http://viewvc.org/

你可能感兴趣的:(python,SVN,cgi,subversion,cvs)