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!