<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[独立安装ViewVC]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Mon, 14 Jun 2010 08:05:29 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	wget //viewvc.tigris.org/files/documents/3330/44050/viewvc-1.0.7.tar.gz<br/>下载后解压SetUP:<br/>bogon:~/svn_view/viewvc-1.0.7 # ./viewvc-install<br/>This is the ViewVC 1.0.7 installer.<br/>Installation path [/usr/local/viewvc-1.0.7]:确定<br/>。<br/>。<br/>。<br/>安装结束后的提示：<br/>&nbsp;&nbsp;1) Edit the /usr/local/viewvc-1.0.7/viewvc.conf file.<br/><br/>&nbsp;&nbsp;2) Either configure an existing web server to run<br/>&nbsp;&nbsp;&nbsp;&nbsp; /usr/local/viewvc-1.0.7/bin/cgi/viewvc.cgi.<br/>&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; Or, copy /usr/local/viewvc-1.0.7/bin/cgi/viewvc.cgi to an<br/>&nbsp;&nbsp;&nbsp;&nbsp; already-configured cgi-bin directory.<br/>&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp; Or, use the standalone server provided by this distribution at<br/>&nbsp;&nbsp;&nbsp;&nbsp; /usr/local/viewvc-1.0.7/bin/standalone.py.<br/><br/><br/>---------------------------------------------------------------------------------------------------------------------<br/><br/><br/>开始配置：<br/> 打开viewvc.conf，修改下面几行：<br/><br/><div class="code">#cvs_roots = cvs: /home/cvsroot<br/>svn_roots = SOA_TAE_ALL: /opt/svn/repositories/SOA_TAE_ALL</div><br/><br/>---------------------------------------------------------------------------------------------------------------------<br/><br/>StartRun:<br/><div class="code"><br/>/svn_view/viewvc-1.0.7/bin<br/>./standalone.py</div><br/><br/>---------------------------------------------------------------------------------------------------------------------<br/>中文乱码解决：<br/>./templates/classic/include/header.ezt:<br/>./templates/classic/error.ezt:<br/>./templates/classic/query.ezt:<br/>./templates/default/include/header.ezt:<br/>./templates/default/error.ezt:<br/>./templates/default/query.ezt:<br/><br/>在head下面加上：<br/>&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;<br/><br/>文献参考：<br/><br/><br/>ViewVC独立运行的基本配置:<br/>1. ViewVC最简单配置<br/>&nbsp;&nbsp;&nbsp;&nbsp;打开viewvc.conf，修改下面几行：<br/>&nbsp;&nbsp;&nbsp;&nbsp;将cvs_roots = cvs: /home/cvsroot注释掉；<br/>&nbsp;&nbsp;&nbsp;&nbsp;#svn_roots = svn: /home/svnrepos 改成类似于 svn_roots = mytest: C:&#92;svn_repos&#92;mytest，其中mytest是你指定的仓库名，冒号后面跟的是仓库所在的路径；<br/>&nbsp;&nbsp;&nbsp;&nbsp;default_root = cvs注释掉，这样你至少可以看到仓库列表。//去掉很重要的<br/>2. 双击ViewVC&#92;bin下的standalone.py，就可以启动ViewVC自带的Web服务，然后在IE中输入http://localhost:7467/viewvc就应该可以看到仓库列表了，到这一步为止，我没有碰到什么障碍，所以，没什么可以提示的了；<br/>3. 点击任何一个仓库，就应该可以看到仓库中的目录或文件了，但是，如果你在IE中看到如下的提示：<br/>&nbsp;&nbsp;&nbsp;&nbsp;ImportError: No module named svn&nbsp;&nbsp;那说明你没有安装Subversion的Python包，或者将其放到了Subversion的目录下了；<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#039;module&#039; object has no attribute &#039;SubversionRepository&#039; 那说明你将Subversion的Python包复制到了viewvc的vclib下，并且覆盖掉了viewvc自己的文件；那么，要怎样安装这个包呢，ok，将其复制到ViewVC或者Python的lib目录下吧，唉，当初整这个也费了我不少周折，惭愧，谁叫我是个Python盲呢:<br/>http://pysvn.tigris.org/project_source_code.html<br/>http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.6.tar.gz<br/>安装方法参考模仿：http://www.jackxiang.com/post/3981/<br/> 最后问题及其解决：<br/>(&#039;Error:&#039;, &#039;cannot find SVN include svn_client.h - use --svn-inc-dir&#039;)<br/>make: *** 没有规则可以创建目标“clean”。 停止。<br/>make: *** 无目标。 停止。<br/>make: *** 没有规则可以创建目标“egg”。 停止。<br/>error: Not a URL, existing file, or requirement spec: &#039;dist/pysvn-1.7.6-py2.6-linux-i686.egg&#039;<br/>解决办法：<br/>yum install&nbsp;&nbsp;subversion-devel<br/><br/>cd Source<br/>python setup.py configure<br/>make clean<br/>make<br/>=================编译pysvn===============================<br/>cd ../Tests<br/>Test pysvn by running <br/>make<br/><br/>Install pysvn by copying the following from Extension/Source to python site-specific directory.<br/>mkdir python-libdir/site-packages/pysvn<br/>cp pysvn/__init__.py python-libdir/site-packages/pysvn<br/>cp pysvn/_pysvn*.so python-libdir/site-packages/pysvn<br/><br/>rpm -ql python-2.6.6-29.el6_2.2.i686<br/>找到python路径：/usr/lib/python2.6/ <br/>cp -Rf /root/software/pysvn-1.7.6/Source/pysvn/_pysvn_2_6.so ./.<br/>cp -Rf /root/software/pysvn-1.7.6/Source/pysvn/__init__.py ./.<br/><br/>========swig支持并绑定到subversion=====================================<br/>绑定到subversion：<br/>要安装viewCvs还需要python的支持，因此我们这里安装的python的2.4版本<br/> ./configure PYTHON=/usr/bin/python<br/>make swig-py&amp;&amp;make install-swig_py<br/>然后会生成　libsvn_swig_py.so 　文件，使python和subversion绑定起来<br/>=============================================<br/><br/>最近需要用到pysvn扩展包，但在cenos上用easy_install安装不了，说找不到该包，使用yum也不行，无奈只好到官网去下载，我下的是1.7.5的源码包，scp到centos后，执行一下操作：<br/>tar zxvf&nbsp;&nbsp;pysvn-1.7.5.tar.gz<br/>cd pysvn-1.7.5/Source<br/>python setup.py configure<br/>make<br/>cp pysvn /usr/local/python2.7/<br/>安装完成，在终端下使用ipython，输入import pysvn正常，到此该模块安装完成。<br/>ps:源码安装需要你安装subversion-devel包，否则会提示找不到svn_client.h文件<br/>------------------------------------------------------------------------------------------------------------------------------------------------------------<br/>将viewvc和Apache集成standalone.py启动的viewvc服务不够稳定，在生产环境通产需要和web服务器集成。viewvc以CGI方式集成到Apache中相当简单。只需要用ScriptAlias指令将viewvc安装目录下的bin&#92;cgi子目录映射到一个URL上去。示例：<br/><br/>ScriptAlias /codeview/ &quot;E:/viewvc/bin/cgi/&quot;<br/>重启Apache，即可通过URL：http://localhost/codeview/viewcvs.cgi访问所配置的代码仓库<br/><br/><br/>下载viewvc<br/>$ wget http://www.viewvc.org/nightly/viewvc-1.1-dev-20070307.tar.gz <br/>安装viewvc<br/>$ ./viewvc-install <br/>编辑viewvc配置文件 viewvc.conf<br/>root_parents = /home/userhome/zztest/svn_dir : svn,<br/># /home/cvs-repositories : cvs<br/>同时你还可以在 viewvc.conf 中找到一些可选配置，比如PHP语法高亮等。 <br/>在 Apache 的配置文件中加入viewvc配置，并加如HTTP验证功能<br/>Alias /webview /usr/local/viewvc-dev/bin/cgi/<br/><br/>DirectoryIndex viewvc.cgi<br/>AddHandler cgi-script .cgi<br/>Options ExecCGI FollowSymLinks<br/>AllowOverride None<br/>AuthType Basic<br/>AuthName “Subversion repository”<br/>AuthUserFile /usr/local/viewvc-dev/viewpasswd.conf<br/>Require valid-user<br/>Order allow,deny<br/>Allow from all<br/><br/>这时当你在WEB上查看viewvc时，可能会提示<br/>viewvcImportError: No module named svn<br/>这是因为 python 还需要一个和你工作的svn系统进行联系的库，在svn的原代码中可以进行编译并安装，前提是需要安装 swig 这个软件包，还好在大多数LINUX发行版中，这个软件包是默认安装的。你可以用<br/>$ which swig<br/>这样的命令来验证，如果没有安装上，可以安装一个。接下来你可能需要通过这样的方式，重新编译并安装svn软件包<br/>$ ./configure --prefix=/usr/local --with-apxs=/usr/local/bin/apxs --with-berkeley-db=/usr/local PYTHON=/usr/local/bin/python2.5<br/>$ make<br/>$ sudo make install<br/>$ make swig-py<br/>$ make install-swig-py<br/>现在你的viewvc就可以正常工作了。 <br/><br/><br/><br/>五、安装viewCvs<br/>&nbsp;&nbsp;&nbsp;&nbsp;下载http://viewvc.org源码包并解压<br/>&nbsp;&nbsp;&nbsp;&nbsp;切换到解压目录<br/>&nbsp;&nbsp;&nbsp;&nbsp;$./viewvc-install，第一个提示后指定ViewVC的安装目录，第二个提示直接回车就行<br/>&nbsp;&nbsp; 打开viewvc.conf，修改下面几行： <br/>&nbsp;&nbsp;&nbsp;&nbsp;将cvs_roots = cvs: /home/cvsroot注释掉； <br/>&nbsp;&nbsp;&nbsp;&nbsp;#svn_roots = svn: /home/svnrepos 改成仓库所在的路径；如果多个仓库加逗号隔开；<br/>六、配置apache,在httpd.conf中添加下面两行<br/>&nbsp;&nbsp;&nbsp;&nbsp;ScriptAlias /viewvc /usr/local/viewvc-1.0/www/cgi/viewvc.cgi<br/>&nbsp;&nbsp;&nbsp;&nbsp;ScriptAlias /query /usr/local/viewvc-1.0/www/cgi/query.cgi<br/>&nbsp;&nbsp;&nbsp;&nbsp;在最后添加如：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;Location /svn&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DAV svn<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SVNParentPath /home/subversion　仓库目录<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AuthzSVNAccessFile /home/subversion/svnuser　存取权限文件<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AuthType Basic<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AuthName &quot;Subversion repository&quot;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AuthUserFile /home/subversion/svnpasswd　用户验证文件<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Require valid-user<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/Location&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;创建用户难文件：<br/>&nbsp;&nbsp; #htpasswd -cm /home/subversion/svnpass username&nbsp;&nbsp;&nbsp;&nbsp; //来创建的 ，后面会让你输入用户密码<br/>&nbsp;&nbsp;&nbsp;&nbsp;添加用户则&nbsp;&nbsp; htpasswd -m /home/subversion/svnpass user<br/>&nbsp;&nbsp;&nbsp;&nbsp;对于存取权限设置文件大致内容如下：<br/>&nbsp;&nbsp;&nbsp;&nbsp;[/]<br/>&nbsp;&nbsp;&nbsp;&nbsp;* = r<br/>&nbsp;&nbsp;&nbsp;&nbsp;[groups]<br/>&nbsp;&nbsp;&nbsp;&nbsp;diggmore = nio, binzy, easy, vicki, freeman, rainx <br/>&nbsp;&nbsp;&nbsp;&nbsp;[diggmore:/]<br/>&nbsp;&nbsp;&nbsp;&nbsp;@diggmore = rw<br/>综上设置，启动apache就可以了，如果在提交文件到仓库时出现拒绝错误，请确定httpd.conf里设置的linux用户是否对仓库目录有权限 
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] 独立安装ViewVC]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>