1 Star 0 Fork 0

方瑾/git-forbid-npm-registry

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
pre-commit 1.05 KB
一键复制 编辑 原始数据 按行查看 历史
yuansong 提交于 2020-12-25 11:15 . 0.0.2
#!/usr/bin/env node
const fs = require('fs');
const path = require('path');
const execSync = require('child_process').execSync;
try {
const result = execSync('git status -s', { encoding: 'utf-8' });
const forbidRegistry = require("../../package.json").forbidRegistry || [
'registry.npmjs.org',
'registry.yarnpkg.com',
];
const fileList = result.split('\n').filter((item) => {
return /^[M|A]/.test(item);
}).map((item) => {
if (/^[M|A] '(.+?)'$/.test(item)) {
item = item.replace(/^[M|A] '(.+?)'$/, '$1');
} else {
item = item.replace(/^[M|A] (.+?)$/, '$1');
}
return path.resolve(item);
});
for (const file of fileList) {
if (file.includes('yarn.lock') || file.includes('package-lock.json')) {
const str = fs.readFileSync(file).toString();
for (const item of forbidRegistry) {
if (str.includes(item)) {
console.error(`${ file }包含 ${ item }!`);
process.exit(1);
}
}
}
}
} catch (error) {
console.error(error);
process.exit(1);
}
process.exit(0);
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lyxfj/git-forbid-npm-registry.git
git@gitee.com:lyxfj/git-forbid-npm-registry.git
lyxfj
git-forbid-npm-registry
git-forbid-npm-registry
master

搜索帮助