首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端规范指南,让团队代码如出一辙!ESLint + Prettier + husky + lint-staged

以下是一个简单例子 # git配置文件-忽略提交文件 # **/xx目录 忽略指定目录下所有文件 **/node_modules **/package-lock.json # ESlint eslint...quotes: ['error', 'single'], // 用于指定字符串引号风格,这里配置使用单引号作为字符串引号。...使用方式:在项目中配置 Commitlint 规则,然后在提交代码时,Commitlint 会自动校验提交信息是否符合规定格式。...以下是一些常用 Commitlint 规则示例: 先安装依赖 npm i @commitlint/cli 在项目根目录创建, commitlint.config.js 文件 type-enum: 检查提交消息类型是否在预定义列表中选择...": [2, "always", 100], }, }; 在这个示例中,规定了提交消息主题最大长度 100 个字符。

1.6K30

花十分钟时间武装你代码库

} }, } husky 是 git hook 工具,使用 husky,我们可以方便在 package.json 中配置 git hook 脚本,例如: pre-commit、 pre-push...虽然,我们现在已经可以规范提交信息了,但是我们可能不喜欢默认交互,例如,一个精简描述就可以了,不希望再提示我去写详细描述,那么就可以使用 cz-customizable 来进行定制。...例如,我们希望提交到git库代码,都能够通过 eslint 检查或者是通过测试。我们可以借助于 pre-commit 这个钩子来做这些事情。 2....eslint 和 prettier 配置项目是 react 项目,下面是我进行配置。...'no-invalid-regexp': 2, //禁止 RegExp 构造函数中存在无效正则表达式字符串 'no-irregular-whitespace': 1, //禁止在字符串和注释之外不规则空白

2.5K30
您找到你想要的搜索结果了吗?
是的
没有找到

一文搞定 Conventional Commits

然而阻碍我们脚步不只是团队推广,单单对于一系列工具配置都让人头大。这其中主要就是 commitlint 和 commitizen 配合使用以及自定义提交规范。...docs: correct spelling of CHANGELOG 包含作用域提交说明 feat(lang): add polish language fix 编写提交说明,包含(可选...脚注「必须」包含关于提交元信息,例如:关联合并请求、Reviewer、破坏性变更、每条元信息一行。 破坏性变更「必须」标示在正文区域最开始处,或脚注区域中某一行开始。...commitlint commitlint检查您提交消息是否符合conventional commit format。...: commitlint-config-cz 合并 cz-customizable 配置 {types,scopes,scopeOverrides} 和 commitlint 配置 {type-enum

1.1K30

别乱提交代码了,看下大厂 Git 提交规范是怎么做

现在市面上比较流行方案是约定式提交规范(Conventional Commits),它受到了Angular提交准则启发,并在很大程度上以其为依据。约定式提交规范是一种基于提交消息轻量级约定。...全局模式下,需要 ~/.czrc 配置文件, commitizen指定Adapter。 2....添加相应配置 创建commitlint.config.js # In the same path as package.json echo 'module.exports = {extends: ["...> 填写完毕后,husky会调用commitlint对message进行格式校验,默认规定type及subject必填项。...2. scope scope也必填项,用于描述改动范围,格式项目名/模块名,例如:node-pc/common rrd-h5/activity,而we-sdk不需指定模块名。

92620

别乱提交代码了,看下大厂 Git 提交规范是怎么做

现在市面上比较流行方案是约定式提交规范(Conventional Commits),它受到了Angular提交准则启发,并在很大程度上以其为依据。约定式提交规范是一种基于提交消息轻量级约定。...全局模式下,需要 ~/.czrc 配置文件, commitizen指定Adapter。 关注微信公众号:Java技术栈,在后台回复:git,可以获取我整理 N 篇最新Git 教程,都是干货。...添加相应配置 创建commitlint.config.js # In the same path as package.json echo 'module.exports = {extends: ["...> 填写完毕后,husky会调用commitlint对message进行格式校验,默认规定type及subject必填项。...2. scope scope也必填项,用于描述改动范围,格式项目名/模块名,例如: node-pc/common rrd-h5/activity,而we-sdk不需指定模块名。

1.3K20

Git 中文参考(二)

仅当目录空时才允许克隆到现有目录中。 GIT 网址 通常,URL 包含有关传输协议,远程服务器地址以及存储库路径信息。根据传输协议,可能缺少某些信息。...--status 使用编辑器准备提交消息时,在提交消息模板中包含 git-status [1] 输出。默认为 on,但可用于覆盖配置变量 commit.status。...--no-status 使用编辑器准备默认提交消息时,请勿在提交消息模板中包含 git-status [1] 输出。...这将从提交历史记录中删除 WIP 提交,并将工作树设置创建快照之前状态。 此时,索引文件仍然包含您作为 _ 快照 WIP_ 提交所有 WIP 更改。...这将更新索引以将您 WIP 文件显示提交。 另见 git-stash [1] 。

4000

(译)通过 Git 和 Angular 了解语义化提交信息

这种做法并不是新出现,但在最近几年中越来越多地得到了应用。而且很可能您已经在某些项目中遇到过这样提交消息。 最早出现规范之一来自与 AngularJS 项目。...,同时通过提交消息类型忽略不重要更改 强制提交信息结构,鼓励有针对特定目的小型提交 直接提交信息主体,不必话大段话去解说 根据提交信息类型自动更新包版本号(Bump the package version...正如您可能会推断,此提交实际上是 Angular 存储库中存在。 常见类型 除了定义提交消息格式外,Angular 提交消息约定还指定了一个有用类型列表,其中包含了各种各样更改。...浏览历史变更记录 Git 我们提供了浏览存储库提交历史能力,所以我们就可以知道实际发生了什么,谁做了贡献等等。...CLI工具 Commitizen 是一个通过命令行强制格式化提交信息工具: ? 检查器(Linter) commitlint 是一个保证提交消息格式符合约定工具: ?

1.3K20

别乱提交代码了,看下大厂 Git 提交规范是怎么做

现在市面上比较流行方案是 约定式提交规范( ConventionalCommits),它受到了 Angular提交准则启发,并在很大程度上以其为依据。约定式提交规范是一种基于提交消息轻量级约定。...全局模式下,需要 ~/.czrc 配置文件, commitizen指定 Adapter。 2....添加相应配置 创建 commitlint.config.js # In the same path as package.json echo 'module.exports = {extends: [...> 填写完毕后, husky会调用 commitlint对message进行格式校验,默认规定 type及 subject必填项。...2. scope scope也必填项,用于描述改动范围,格式项目名/模块名,例如:node-pc/common rrd-h5/activity,而 we-sdk不需指定模块名。

2.6K30

基于Vite2+Vue3项目复盘总结

:检测文件,只对暂存区中有改动文件进行检测,可以在提交前进行Lint操作 commitizen:使用规范化message提交 commitlint: 检查message是否符合规范 cz-conventional-changelog...: "scripts": { "cz": "git cz" } 复制代码 接下来你可以执行yarn cz命令来编写一些约定好提交规范: image.png 此时我们已经根据约定规范提交消息...,但是我们怎么知道提交消息是不是正确呢,那么接下来就需要配置刚刚介绍到commitlint,只需要一句命令即可完成配置,它会在项目根目录下面创建一个commitlint.config.js配置文件...它会使用@commitlint/config-conventional这个包里面提供校验规则进行校验,你可以理解ESLint规则。...husky/commit-msg "yarn commitlint" 复制代码 此时已经完成配置了,现在团队里面任何成员提交必须按照严格规范进行了。

1.2K30

前端工程化之 commitlint + husky 实现 git 提交规范化

如果if块中包含return,它后面的else if块中也包含了return,这个时候就可以把else if拆开 'spaced-comment': [ 'error',...配置 @commitlint/cli 可以检查提交信息 @commitlint/config-conventional 是提交规范配置包 安装 npm i @commitlint/cli @commitlint...const types = [ 'build', // 主要目的是修改项目构建系统(例如glup,webpack,rollup配置等)提交 'ci', // 修改项目的持续集成流程...(Kenkins、Travis等)提交 'chore', // 构建过程或辅助工具变化 'docs', // 文档提交(documents) 'feat', // 新增功能(.../#what-is-commitlint husky > commit-msg hook failed (add --no-verify to bypass) 现在在来提交一个符合规范 commit

2.8K31

pnpm + workspace + changesets 构建你 monorepo 工

为了防止根目录被发布出去,需要设置工程根目录下 package.json配置文件 private 字段 true。...代码提交规范对于团队或者公司来说是非常重要,养成良好代码提交规范可以方便回溯,有助于对本次提交进行review,如果单纯只是要求团队成员遵循某些代码提交规范,是很难形成强制约束,现在我们就尝试通过工具来约束代码提交规范...Footer 包含此次提交有关重大更改信息,引用此次提交关闭issue地址,如果代码提交是不兼容变更或关闭缺陷,则Footer必需,否则可以省略。...因此接下来我们使用 commitlint 结合 husky 来对我们提交行为进行约束。在 git commit 提交之前使用 git 钩子来验证信息,阻止不符合规范commit 提交。...commitlint.config.js 配置文件,指定 commitlint 校验配置文件: module.exports = { extends: ['@commitlint/config-conventional

4.1K30

通过 41 个 问答方式快速了解学习 Git

使用 rebase -i 时,squash 和 fixup 有什么区别 squash 和 fixup 结合两个提交。squash 暂停 rebase 进程,并允许咱们调整提交消息。...fixup 自动使用来自第一次提交消息。 20. 通常,当使用 master 重新建立功能分支时,对于每次提交都需要解决冲突? 是的。...Git fast forward 提交 多人协同开发,使用 Git 经常会看到警告信息包含术语:fast forward, 这是何义? 简单来说就是提交到远程中心仓库代码必须是按照时间顺序。...当然,某些可视化操作(如管理分支和查看文件差异)在GUI中总是更好。我个人认为在合并过程中在浏览器中查看这些内容就足够了。 23. 当提交已经被推送时,可以做一个 --amend 修改吗?...要从主分支之外分支提取选择提交,可以使用 git cherry-pick。 27. 如何在 git 终端配置颜色 默认情况 下git 是黑白

1.4K20

Git 中文参考(三)

请注意,这会影响所有基于差异输出类型,例如:那些由--stat等产生 --log-size 在每次提交输出中包含“日志大小”行,其中是以字节单位提交消息长度...将选项配置另一种格式名称或 _ 格式:_ 字符串,如下所述(参见 git-config [1] )。...默认情况下,存储被列为“ branchname 上 WIP …”,但您可以在创建存储时在命令行上提供更具描述性消息。...它提供保护优于--force,确保您工作所依据后续更改不会被破坏,但如果某些后台进程在后台更新引用,则这很容易被忽略。...-6 --ipv6 仅使用 IPv6 地址,忽略 IPv4 地址。 GIT 网址 通常,URL 包含有关传输协议,远程服务器地址以及存储库路径信息。根据传输协议,可能缺少某些信息。

3300
领券