网站首页 > 教程文章 正文
一、概述
1.1.使用范围
本规范仅使用于代码服务器为SVN的场景。
1.2.代码提交预校验
在代码提交SVN的时候,插件自动做一些静态代码规范的校验,对不符合规范的代码在提交时,会提示对应代码的错误信息。
使用关键组件包括:
VisualSVN+svnchecker0.3+checkstyle8.17+phthon2.7.6+jdk1.8
Jdk 版本最低为1.8
1.3.结构图
1)SVNChecker以解压包的形式存在,通过pythod脚本调用。
2)Checkstyle以jar包的形式存在,通过配置直接调用即可。
3)SVNChecker和Checkerstyle通过SVN上资源的pre-commit.cmd脚本产生代码的预检查动作。
4)各终端开发者无需在自身开发工具中进行相关配置。
二、操作步骤
2.1.安装python
1)因兼容性问题,python只能使用3.0.0以上的版本,建议使用2.7.6即可。
2)可直接使用附件中python的版本
3)若选择自己下载,从 https://www.python.org/downloads/ 中下载相应的Python2.x版本(注意这里不要下载Python3.x)。另外如果觉得上述链接下载比较慢,可以使用下面这个国内链接http://www.downza.cn/soft/281674.html。注意下载对应位数的Python版本。
4)python安装完成后配置环境变量
5)查看python是否安装完成,执行如下命令:
2.2.安装SVNChecker
1) 可直接使用附件中的版本(里面已经执行)
2) https://sourceforge.net/projects/svnchecker/files/svnchecker/0.3/中下载 “svnchecker-0.3.zip”,注意直接下载此压缩包即可,免去你安装exe时候可能出现的"no python installation foundin the registry"问题。
3)下载之后直接解压即可。
2.3.配置SVNChecker
1)修改svnchecker-0.3\modules\Transaction.py文件
增加如下代码:
3)修改svnchecker-0.3\checks\Checkstyle.py文件
增加如下代码
2.4.配置checkstyle
1) 下载地址
https://checkstyle.sourceforge.io/
版本建议使用8.17
可以使用附件中的jar包
Checkstyle 以 jar形式存在。
2.5.组件集成步骤
1)配置代码检查脚本checkstyle.xml
按照规定选择自己要检测的代码属性即可,
可参考 符合阿里巴巴代码规范checkstyle检测文件,https://blog.csdn.net/KingBoyWorld/article/details/76082399
2)配置定义文件svncheckerconfig.ini
2.1:创建svncheckerconfig.ini文件
svncheckerconfig.ini文件是svnchecker的配置文件。但svnchecker中并未定义该文件,需要用户自己创建。
其位置既可以放在svnchecker的安装目录之下也可以放在svn资源库的hooks目录下。
前者起全局作用,后者则只对该版本库起作用。
建议放到资源库的hooks目录下。每一个资源库使用自己的一套代码检查规范。
2.2.配置svncheckerconfig.ini文件
将上述配置完成的svncheckerconfig.ini文件,放到目标SVN仓库的hooks目录下:
1)在VisualSVN Server 中选择下图中命令执行图标,在弹出的命令框中输出命令 ii . 即可导航到SVN的根路径:
2)选择要配置的资源文件夹(如goodProject)并选择hooks文件夹,将svncheckerconfig.ini放到此处即可。
3)配置SVN Server的pre-commit
在visualSVNserver 服务器操作界面上选择对应资源服务器的名称,
然后右键 properties:
双击Pre-commithook
双击后,展示脚本输入框
如下命令行内容可直接进行复制即可,
特别关注红框中路径配置要正确
2.6 验证测试
效果如下:
此为svn代码仓库的自动检查,后续更新git代码仓库的配置及操作步骤,欢迎持续关注。
以上为全部内容。
猜你喜欢
- 2024-12-12 人人都是程序员?百度、阿里同天向个人免费开放AI编码助手
- 2024-12-12 if-else嵌套太深?教你一个新手都能掌握的设计模式搞定!
- 2024-12-12 靠左神这套程序员代码面试指南入职阿里、腾讯、美团、百度不再难
- 2024-12-12 前端开发有哪些编码规范?
- 2024-12-12 阿里低代码框架 lowcode-engine 低代码表单实战
- 2024-12-12 阿里P9整理10w字内部并发编程手册,GitHub百万下载量
- 2024-12-12 阿里通义千问代码模型Qwen2.5-Coder全系列正式开源
- 2024-12-12 我入职阿里后,才知道原来简历这么写
- 2024-12-12 最全阿里P系列解读:P5—P8的技能要求和薪资结构
- 2024-12-12 阿里巴巴Java开发规范(4):日志规约
- 最近发表
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- md5 sha1 (32)
- mybatis plus page (35)
- semaphore 使用详解 (32)
- update from 语句 (32)
- vue @scroll (38)
- 堆栈区别 (33)
- 在线子域名爆破 (32)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)