zoukankan      html  css  js  c++  java
  • 基于rietveld 搭建 codereview平台 选型和部署篇(一)

    ##适应读者

    所有希望能通过codereview来提高代码水平和质量的工程师

    所有希望能通过codereview改善开发流程的项目经理

    ##为什么要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平台  使用心得篇(二)

    基于rietveld 搭建 codereview平台  推广篇(二)


    欢迎大家多提建议。

  • 相关阅读:
    如何设定测试目标
    转载:Robotium之Android控件定位实践和建议(Appium/UIAutomator姊妹篇)
    Jenkins启动时报错:java.net.BindException: Address already in use: bind 解决方法
    [转载]Robotium API 翻译(三)——判断测试结果的方法assert、is、search
    什么样的项目适合开展自动化测试
    Python基础11- 函数之自定义函数
    Python基础10- 函数之内部函数与强制转换
    Android获取APK包名的几种方法
    Python基础9- 字典
    回归测试策略
  • 原文地址:https://www.cnblogs.com/fang9159/p/rietveld.html
Copyright © 2011-2022 走看看