review board 安装使用小结

抽出了一些业余时间,折腾了几天,终于基本拿下了review board,安装配置完毕,并创建了第一个测试review code。这过程中,遇到了不少问题需要记录一下的:

1. easy_install安装相关库的时候,很经常是极其郁闷,国外的源基本被墙,所以这里记录了一些国内对应的源 http://pypi.douban.com/  豆瓣  http://pypi.hustunique.com/  华中理工大学 http://pypi.sdutlinux.org/  山东理工大学 http://pypi.mirrors.ustc.edu.cn/  中国科学技术大学,使用方法:easy_install -i 源 库;

2. 因为环境是使用apache+mod_wsgi,编译mod_wsgi模块的时候,请注意指定–with-apxs=这参数,尤其需要注意的是–with-python 这个参数,因为linux系统(centos)一般默认安装python2.4,我们使用py的时候,往往会重新安装为python2.7,因为需要指定你的python版本,免得带来不必要的麻烦;

3. python环境推荐使用python2.7;

4. 安装mysql-python库的时候,你有可能像我一样,安装没报任何的错误,结果import MySQLdb的时候却报错了,是尝试ln -s /usr/local/mysql/lib/mysql/libmysqlclient* /usr/lib  然后再ldconfig  有可能解决你的问题;

5. 下一步尝试使用post-review;

6. 缓存有空在改成memcached即可,现在使用的是file;

7. 图略。

学习diff 和 patch 使用方法

演练:

备注:

单个文件
diff –uN from-file to-file >to-file.patch
patch –p0 < to-file.patch
patch –RE –p0 < to-file.patch
多个文件
diff –uNr from-docu to-docu >to-docu.patch
patch –p1 < to-docu.patch
patch –R –p1 <to-docu.patch

配置Nginx与Lua的history

配置Nginx与Lua的history。

备注:安装Lua或者LuaJIT都是可以的。

import MySQLdb加载模块ImportError: libmysqlclient处理方法

今天为Python安装MySQLdb库,安装过程相当顺利。可惜测试的时候import MySQLdb加载模块ImportError: libmysqlclient_r.so.16。

于是google之,总结一下解决方法:

将mysql/lib下所有关于libmysqlclient的so文件软链接到/usr/lib下。

ln -s /usr/local/mysql/lib/mysql/libmysqlclient* /usr/lib
ldconfig

这样 import MySQLdb 的时候就不会出错了

cygwin安装java环境

首先windows上先安装java,过程略。

然后直接执行:

即可在cygwin使用java环境。

当然你也可以采用在~/.bashrc或者/etc/profile中配置该路径即可。

svn迁移记录

这两天需要将旧的测试服务器的svn迁移到新的测试机器上。然而旧的svn结构是每个项目为一个svn库的,如下结构:
svn://127.0.0.1/www1
svn://127.0.0.1/www2…….
新的测试svn的结构是只有一个svn库为test,如下结构:
svn://127.0.0.1/test/www1
svn:/127.0.0.1/test/www2…..

现在需要将旧svn库导入新的svn库,步骤如下:

当然,如果新迁移的目录结构为svn://127.0.0.1/test/www目录/www1目录 导入的命令则为

经测试,搞定!

备注:

迁移导入的时候,请先建立好目录www1,www2或www/www1 否则报错!

AWK单行脚本快速参考

 

mysql备份脚本

写脚本之前先试试

脚本

测试

搞定。

svn自动发布系统(web)

对自己写的svn发布系统总结:

1. 目标(web)机器创建rsync服务,并使用帐号为 www用户

2. svn代码机器安装python及pysvn库

3. svn 增加钩子 调用同步脚本py

4. 同步脚本py(通过pysvn检出或更新 副本到目录data,并获取检出或更新文件列表 生成rsync命令)

5. 测试

备注:

同步脚本做好logs,并记录好什么时候谁进行了同步

难点:理解rsync服务,特别是它对及层目录没的时候该如何才能自动创建目录及文件,还有需注意svn 删除操作的时候,rsync服务是需要刷新整个目录来删除的,所以需注意一些目录的排除刷新。

代码整理好再公布。