1 下载源码

 svn checkout http://svnplot.googlecode.com/svn/ svnplot-read-only

2 进入src目录,安装 python setup.py install

报以下错误

error: file '/Volumes/MACDATA/myrepo/googlecode/svnplot-read-only/trunk/src/svnlog2sqlite.py' does not exist

我直接就把svnplot目录里的内容向上提了一级,copy了一下,ok

 

3 报pysvn找不到,继续


Install Pysvn on Mac OS X

Sep 6th, 2012

The official python binding for SVN is developed by CollabNet and can be found here. But for unknown reasons, the installation is not very smooth, it seems their developers need to learn a bit about how a python package should be distributed. :)

To install it via source code, you can follow my steps:

1
2
3

 

wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.6.tar.gz
tar xvfz pysvn-1.7.6.tar.gz
cd pysvn-1.7.6/

This package doesn’t follow the convention of normal python distribution, you can’t simply type sudo python setup.py install. You have to type several extra commands.

1
2
3

 

cd Source/
python setup.py configure --svn-lib-dir=/usr/local/lib
make

Note that the svn-lib-dir option here, because we’re trying to install it on Mac OS X and this platform doesn’t have subversion development package installed by default. We have to first install subversion via brew install subversion, and its libraries are put in directory /usr/loca/lib.

1
2

 

cd ../Tests/
make # test pysvn

The final installation part has to done manually by ourselves…

Brew’s python packages are often located at /usr/local/lib/python2.7/site-packages. So let’s put this new python lib at this place as well.

1
2
3
4

 

mkdir /usr/local/lib/python2.7/site-packages/pysvn
cd ../Source/
cp pysvn/__init__.py /usr/local/lib/python2.7/site-packages/pysvn/
cp pysvn/_pysvn*.so /usr/local/lib/python2.7/site-packages/pysvn/

Ok, now you’re done. Invoke python on your command line and see if import pysvn works or not.

 

安装之后,将setup.py中的依赖pysvn暂时去掉,安装成功

再去执行svnlog2sqlite.py ok,没问题了

 

 

 

以下是官方的

http://code.google.com/p/svnplot/issues/detail?id=80

My guessing on install:

1. cd /tmp/
2. wget http://svnplot.googlecode.com/files/SVNPlot-0.7.6.zip
3. unzip SVNPlot-0.7.6.zip
4. cd SVNPlot-0.7.6
5. python setup.py install


running install
running build
running build_py
running install_lib
creating /usr/local/lib/python2.7/dist-packages/svnplot
creating /usr/local/lib/python2.7/dist-packages/svnplot/javascript
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jquery.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript
copying build/lib.linux-x86_64-2.7/svnplot/javascript/excanvas.compiled.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript
creating /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/changes.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/README.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/jquery.jqplot.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/copyright.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/jqPlotCssStyling.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/usage.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/jquery.jqplot.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/jquery.jqplot.css -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/gpl-2.0.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/MIT-LICENSE.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/jqPlotOptions.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
creating /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.ohlcRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.donutRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.blockRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.logAxisRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.dragable.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.bubbleRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.json2.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.barRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.BezierCurveRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.trendline.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.trendline.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.ciParser.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.dateAxisRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasAxisLabelRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.mekkoRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.categoryAxisRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.cursor.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.categoryAxisRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.meterGaugeRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.mekkoAxisRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.BezierCurveRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasOverlay.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.enhancedLegendRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasOverlay.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.ciParser.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasAxisTickRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.meterGaugeRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.blockRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.mekkoAxisRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.mekkoRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.barRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.ohlcRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.json2.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.enhancedLegendRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.pieRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.pointLabels.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasTextRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.pointLabels.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.logAxisRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasTextRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.cursor.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.funnelRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.dateAxisRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.bubbleRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.highlighter.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.donutRenderer.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.highlighter.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.pieRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.funnelRenderer.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/plugins/jqplot.dragable.min.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot/plugins
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/jquery.jqplot.min.css -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/jqplot/optionsTutorial.txt -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript/jqplot
copying build/lib.linux-x86_64-2.7/svnplot/javascript/excanvas.js -> /usr/local/lib/python2.7/dist-packages/svnplot/javascript
copying build/lib.linux-x86_64-2.7/svnplot/svnplotmatplotlib.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnplot-js.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/readme.txt -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/normurltest.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnplot.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/README -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnstats.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnstatscsv.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnsqlite2gexf.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnlog2sqlite.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnlogiter.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/heatmapclr.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnplotbase.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/__init__.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnsqlite2ora.py -> /usr/local/lib/python2.7/dist-packages/svnplot
copying build/lib.linux-x86_64-2.7/svnplot/svnlogclient.py -> /usr/local/lib/python2.7/dist-packages/svnplot
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnplotmatplotlib.py to svnplotmatplotlib.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnplot-js.py to svnplot-js.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/normurltest.py to normurltest.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnplot.py to svnplot.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnstats.py to svnstats.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnstatscsv.py to svnstatscsv.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnsqlite2gexf.py to svnsqlite2gexf.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnlog2sqlite.py to svnlog2sqlite.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnlogiter.py to svnlogiter.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/heatmapclr.py to heatmapclr.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnplotbase.py to svnplotbase.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/__init__.py to __init__.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnsqlite2ora.py to svnsqlite2ora.pyc
byte-compiling /usr/local/lib/python2.7/dist-packages/svnplot/svnlogclient.py to svnlogclient.pyc
running install_egg_info
Writing /usr/local/lib/python2.7/dist-packages/SVNPlot-0.7.6.egg-info


---

1. as you see packages installed into /usr/local/lib/python2.7/dist-packages/ which is*NOT in $PATH which cause me calling "python  /usr/local/lib/python2.7/dist-packages/svnplot/svnlog2sqlite.py" which is tedious.  
2. clear install notes would be very appreciated, specially for non-python users!