做为开发人员,每个人写代码都会出现BUG,但要防止低级的BUG出现就要对代码进行质量检查,所以当代码进行提交时对代码进行检查非常有必要,而且能统一代码的规范性。 而我们开发时,进行代码提交用得最多就是SVN与Git仓库来管理,而现在我是用git来进行代码管理的,所以现介绍一下用git如何进行代码检查; 首先安装Git(网上很多,不讲多),安装jsHint来进行检查,这里我是用nodeJS来进行安装。 安装命令:npm i jshint -g, 然后打开git的pre-commit钩子,位置在yourProject/.git/hooks 添加shell脚本在pre-commit添加shell脚本:
OK,完成,现在执行git commit就能检查要提交的js代码是否通过。 不会shell脚本作为一个前端人员(我就是),可能对shell脚本编写不太熟,能否不通过编写shell实现呢? 那就用npm上的插件pre-commit来实现, 安装命令:npm i pre-commit --save 然后新建一个package.json,添加pre-commit参数: ok,添加完批,执行git commit,被坑了..... 由于windows是不支持 *.js的写法,直接就报错Can't open file * .js,代码又提交成功,这不是我们想要的效果; 如果要检查就只能用(.)或者指定目录(static/mobile),就会检查所有的文件或者指定目录的js文件,但问题又来了,这样检查就全局检查了,我们的目的只检查提交的更改代码;废话不说,来写插件吧。 先安装jshint在工程,可以给插件调用; 安装命令:npm i jshint --save; 命名为check.js: check.js代码:
OK,当执行git commit就可以执行check.js的代码,先获取差异文件,再把错误信息输出,如果有错直接结束进程; 对于不懂shell脚本的前端同学,就很好的扩展这个check.js文件,也可以过滤个别的js文件。 |
|
来自: bananarlily > 《IT》