为什么要codereview

. 整个团队的编码风格是统一的。

. 有高手能对自己的代码指点一二,从而提高编码水平。

. 减少低级错误的出现

. 约束自己写高质量的代码,因为是要给人看的。

我们对codereview的需求

. 很轻松可以发布自己写的代码。

. 很轻松的可以与老代码diff review。

. review的人和被review的人很轻松的交互,而且还能保存交互的历史。

我选择rietveld

基于以上需求,rietveld都满足,web应用是基于jango框架开发,可以通过一个python的客户端上传需要review的代码,而这一切又可以与svn或git无缝对接,因为它的diff是基于,review人员可以在web应用上看上传上来的需要review的代码,并且可以做批注。如果想了解rietveld,可以访问官方文档。http://code.google.com/p/rietveld/
,在这里我就不赘述了。

部署

其实rietveld本来就有个服务器托管,但国内各种被墙(大家都懂的),所以我们需要在搭建一个本地环境,可以按照官网里面的部署方法,切记要选择不基于app-engine的方式,这种是可以直接部署在本地的(我部署时基于app-engine各种麻烦)。大家可以参考http://django-gae2django.googlecode.com/svn/trunk/examples/rietveld/README, 记得进去后直接找“Manual Setup”即可,前提你有个svn客户端和python2.7以上的版本。

checkout Django 1.2.5框架

    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 checkout Rietveld
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 再打补丁: patch -p0 < patches/upload.diff
patch -p0 < patches/account-login-links.diff
patch -p0 < patches/download.link.diff 再装数据库 ./manage.py syncdb

在部署时会让你添加管理员和密码,你按步骤做就行了,就可以开启web服务了。

在当前目录下:./manage.py runserver 127.0.0.1:8000

在浏览器输入:127.0.0.1:8000, 就可以进入界面了,

这里有个地方需要大家注意下,最开始如果用户登陆会报Modal User找不到getId()的错误,, 这需要找到Modal.py 将user.getId() 全部换成user.id就都OK了。

常用工具说明--搭建基于rietveld的CodeReview平台(未测试)的更多相关文章

  1. APP测试常用工具以及框架

    APP测试常用工具以及框架 1)纯白盒方式的测试,Monkey.一般是开发用的比较多,动手能力强的同学可以自己去尝试下! 2)偏白盒的robotium,这家伙号称是黑盒,但是本人不太认同- 因为使用r ...

  2. 基于locust的性能测试平台搭建

    前段时间加入性能测试组,并参与搭建基于locust的性能测试平台,我分到的任务相对独立,开发locust的启动接口和停止运行接口,现开发的差不多了,做一个总结 一.locust运行的相关内容 二.lo ...

  3. 搭建基于MySQL的读写分离工具Amoeba

    搭建基于MySQL的读写分离工具Amoeba: Amoeba工具是实现MySQL数据库读写分离的一个工具,前提是基于MySQL主从复制来实现的: 实验环境(虚拟机): 主机 角色 10.10.10.2 ...

  4. 2015第30周三Spring常用工具类

    文件资源操作 文件资源的操作是应用程序中常见的功能,如当上传一个文件后将其保存在特定目录下,从指定地址加载一个配置文件等等.我们一般使用 JDK 的 I/O 处理类完成这些操作,但对于一般的应用程序来 ...

  5. linux常用服务软件搭建及使用技巧

    一.Webmin安装: Webmin 是一个基于浏览器的管理工具,可以应用于Linux 和其他一些平台,提供了可以完成很多管理和操作任务的图形化界面 •安装完成后,root 用户会被自动创建,密码为系 ...

  6. spring中常用工具类介绍

    http://www.cnblogs.com/langtianya/p/3875103.html 文件资源操作     Spring 定义了一个 org.springframework.core.io ...

  7. 象写程序一样写博客:搭建基于github的博客

    象写程序一样写博客:搭建基于github的博客   前言 github 真是无所不能.其 Pages 功能 支持上传 html,并且在页面中显示.于是有好事者做了一个基于 github 的博客管理工具 ...

  8. Java程序员常用工具集

    我发现很多人没办法高效地解决问题的关键原因是不熟悉工具,不熟悉工具也还罢了,甚至还不知道怎么去找工具,这个问题就大条了.我想列下我能想到的一个Java程序员会用到的常用工具. 一.编码工具 1.IDE ...

  9. 第二章 Qt常用工具的介绍

    第二章 Qt常用工具的介绍 (1)No.1 qmake 相信编写过Makefile的开发人员,随着工程中源码的级数递增和以类型.功能.模块组织源码的子目录的增多,都不愿意重复机械地手工编写这个工程管理 ...

随机推荐

  1. 如何跟踪sharepoint详细日志

    PS C:\Users\setup.moss> Set-SPLogLevel -TraceSeverity verboseexPS C:\Users\setup.moss> New-SPL ...

  2. Java之static静态代码块

    Java之static静态代码块 构造代码块 使用{}包裹的代码区域,这里的代码区域特指位于class{}下面的而不是存在于其他type method(){}这类函数下面的代码区域 public cl ...

  3. [Winter Vacation] 守护,守望

    最近总是堕落......想好了,不如在百无聊赖之时写一些心底的话,让它们最终不归于尘土吧. 有了想要守护一个人的信念与想法,然而有没有资格却还没有人能够说清楚,下断言.这可真是可悲了,总不能笃定着对方 ...

  4. loj#6261. 一个人的高三楼(NTT+组合数学)

    题面 传送门 题解 统计\(k\)阶前缀和,方法和这题一样 然后这里\(n\)比较大,那么把之前的柿子改写成 \[s_{j,k}=\sum_{i=1}^ja_i{j-i+k-1\choose j-i} ...

  5. redis 3.0 集群__监控警报工具(sentinel)

    参考文档 http://redis.readthedocs.org/en/latest/topic/sentinel.html 因为目前还处于开发阶段,就先不研究了,待续

  6. Extjs在form展示后台单个对象的属性

    目的:写一个按钮事件,点击时弹出一个win窗体,里面镶嵌form表单,并且展示后台单个对象的属性 先来后台: public void find(){ String clientId = request ...

  7. Python爬取网上车市[http://www.cheshi.com/]的数据

    #coding:utf8 #爬取网上车市[http://www.cheshi.com/]的数据 import requests, json, time, re, os, sys, time,urlli ...

  8. PHP将多维数组变成一维数组

    function reduceArray($array) { $return = []; array_walk_recursive($array, function ($x) use (&$r ...

  9. [CoffeeScript]在WebStorm里运行CoffeeScript

    CoffeeScript 是一门编译到 JavaScript 的小巧语言. 在 Java 般笨拙的外表下, JavaScript 其实有着一颗华丽的心脏. CoffeeScript 尝试用简洁的方式展 ...

  10. Ubuntu16.04安装视觉SLAM环境(ceres-solver)

    1.先在github上下载ceres-solver git clone https://github.com/ceres-solver/ceres-solver.git 2.安装ceres-solve ...