基于rietveld搭建CodeReview平台

来源:互联网 发布:公司电脑域名被禁止 编辑:程序博客网 时间:2024/05/20 20:18
为什么需要CodeReview?
1.保证团队代码风格的一致性,发现不一致,应反馈修改
2.提升代码质量,尤其是能在牛人的指点下,进步更快
3.减少一些低级错误的发生,避免再消耗人力,时间
4.约束每个开发人员写代码的随意性
5.有助于项目组内的同事了解其他同事负责的模块的实现细节
 
今天有点时间就研究了下以前组内使用的CodeReview平台的搭建,因要给自己家里的开发机要搞一个,:)
 
具体是参考官方英文说明
http://django-gae2django.googlecode.com/svn/trunk/examples/rietveld/README

下面是我参照说明的安装步骤
1:下载必要的python脚本文件
新建一个目录,我命名CodeReview,在下面co以下svn url
svn co http://django-gae2django.googlecode.com/svn/trunk/examples/rietveld .  (注意:最后是个点)
svn co http://code.djangoproject.com/svn/django/tags/releases/1.2.5/django django
svn co http://django-gae2django.googlecode.com/svn/trunk/gae2django
svn co http://rietveld.googlecode.com/svn/trunk/codereview
svn co http://rietveld.googlecode.com/svn/trunk/static
svn co http://rietveld.googlecode.com/svn/trunk/templates
svn export http://rietveld.googlecode.com/svn/trunk/upload.py

2:在CodeReview目录下执行以下命令打上补丁包
patch -p0 < patches/upload.diff
patch -p0 < patches/account-login-links.diff
patch -p0 < patches/download.link.diff

3.安装数据库
./manage.py syncdb

4.启动服务
如果需要启动开发者模式,执行
./manage.py runserver 127.0.0.1:8000

如果需要安装在正式的机器上,只需要按照自己的ip和port输入参数即可,如:
./manage.py runserver 192.168.1.88:8000

上面的启动是命令行启动方式,也可以加上nohup,这样就在后台运行了

5.登录时coderevire/model.py会报错,因为rietveld默认是支持google app engine的,
解决:把model.py的783和786行代码修改成self.user.id != current_user.id,下同。

6.添加新用户
在论坛上看到1个添加用户的方法:在/admin页面上添加新用户时,只会添加auth_user,而不会添加对应的profile类,即codereview_account。如果是这样的话,用新添加的用户登录还会出错(找不到user对应的account)。
混过去的办法是通过python manage.py createsuperuser来创建,这个命令会同时创建这两个类的实例到数据库。再到/admin把普通用户的超级权限去掉。

实际上不用上面这么麻烦(估计是作者当时没有找到从哪里点击设置),步骤:先在/admin页面添加,添加完以后再查看所有的用户,点击蓝色的用户名即可进入更详细的设置,勾选上该用户的staff status就ok了