前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >git commit规范化实践

git commit规范化实践

作者头像
寻找石头鱼
发布于 2019-08-20 03:14:44
发布于 2019-08-20 03:14:44
1.3K00
代码可运行
举报
文章被收录于专栏:寻找石头鱼寻找石头鱼
运行总次数:0
代码可运行

最近从svn转到git进行代码版本控制,今天了解了git commit规范化的一些知识后,写此文章记录下配置过程。

环境

编辑器使用的是vscode,项目框架是vue3.0

规范化工具

规范化git commit消息的工具commitizen

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 # 将commitizen命令行安装到全局
npm install -g commitizen

安装完之后我们就项目中引进改工具,就可以规范commit行为了。提交的命令为git cz,如果还是用git commit命令进行提交,那么这个工具就不会起到什么作用了。

commitizen对commit规范化界面都是英文提示,这个时候我就想如果要汉化怎么办,这就有了下面一个工具的出现。

安装可定制的Commitizen插件cz-customizable

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install cz-customizable --save-dev

安装cz-customizable可以配置自定义的commitizen配置文件,在自定义的配置文件中我就可以对配置进行汉化

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  "config": {
    "commitizen": {
      "path": "./node_modules/cz-customizable"
    },
    "cz-customizable": {
      "config": "my.cz-config.js" // 这里的文件名可以自定义,但是改文件需要放置在项目的根目录下
    }
  }

汉化完之后的效果是下面这样:

版本发布

进行commit规范化的好处是为了提高团队协作效率,使代码阅读性更强。还有另外一个节省后期维护版本信息的成本。通过规范化commit行为,我们可以通过自动化工具生成版本信息这样极大的降低了维护成本,提高了工作效率。在这里我使用的版本发布工具是standard-version,当然还有conventional-changelog可以使用。

standard-version可以自动帮助我们做以下几件事情:

  1. 自动在数据中生成版本号
  2. 使用conventional-changelog更新 CHANGELOG.md
  3. 提交package.json (如果有) 和 CHANGELOG.md
  4. 给新版本打一个tag

首先是安装standard-version

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm i standard-version --save-dev

安装完成之后,执行standard-version命令,在控制台可以看到如下信息:

可以清楚的看到standard-version做了哪些事情。其中package.json和changelog.md文件是被自动提交了的。这样在项目中生成了一个changelog文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Changelog

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

### [0.3.2](http://112.80.40.2:11080/chenchent/cdss-acs/compare/v0.3.1...v0.3.2) (2019-07-25)



### [0.3.1](http://112.80.40.2:11080/chenchent/cdss-acs/compare/v0.3.0...v0.3.1) (2019-07-25)


### Bug Fixes

* 将commitizen使用本地配置文件 ([4accd0a](http://112.80.40.2:11080/chenchent/cdss-acs/commit/4accd0a))



## [0.3.0](http://112.80.40.2:11080/chenchent/cdss-acs/compare/v0.2.0...v0.3.0) (2019-07-25)

### Bug Fixes

- **changelog:** 生成新的 changelog 文件 ([17747cf](http://112.80.40.2:11080/chenchent/cdss-acs/commit/17747cf))

### BREAKING CHANGES

- **changelog:** 测试

## 0.2.0 (2019-07-25)

### Features

- **me:** 测试 ([64e596d](http://112.80.40.2:11080/chenchent/cdss-acs/commit/64e596d))

# 0.1.0 (2019-07-25)

### Features

- **me:** 测试 ([64e596d](http://112.80.40.2:11080/chenchent/cdss-acs/commits/64e596d))

由于我习惯于使用node命令,所以最后我又将规范化跟版本生成的命令配置到了scripts中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  "scripts": {
    "commit": "git cz",
    "changelog": "standard-version --dry-run && standard-version" 
# standard-version --dry-run只是用来打印要做的事情,并不会做实际的操作
  }

这就是我对git commit规范化的一些实践。mark下来做一个记录,希望可以帮助到其他人。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
长短期记忆(LSTM):突破性的序列训练技术
长短期记忆(Long short-term memory, LSTM)是一种特殊的RNN,主要是为了解决长序列训练过程中的梯度消失和梯度爆炸问题。简单来说,就是相比普通的RNN,LSTM能够在更长的序列中有更好的表现。
数据科学工厂
2023/11/20
5340
长短期记忆(LSTM):突破性的序列训练技术
循环神经网络——中篇【深度学习】【PyTorch】【d2l】
来杯Sherry
2023/09/19
3960
循环神经网络——中篇【深度学习】【PyTorch】【d2l】
【现代深度学习技术】现代循环神经网络01:门控循环单元(GRU)
  在通过时间反向传播中,我们讨论了如何在循环神经网络中计算梯度,以及矩阵连续乘积可以导致梯度消失或梯度爆炸的问题。下面我们简单思考一下这种梯度异常在实践中的意义:
Francek Chen
2025/05/02
1580
【现代深度学习技术】现代循环神经网络01:门控循环单元(GRU)
【现代深度学习技术】现代循环神经网络03:深度循环神经网络
深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重要的技术特征是具有自动提取特征的能力。神经网络算法、算力和数据是开展深度学习的三要素。深度学习在计算机视觉、自然语言处理、多模态数据分析、科学探索等领域都取得了很多成果。本专栏介绍基于PyTorch的深度学习算法实现。
Francek Chen
2025/05/03
1320
【现代深度学习技术】现代循环神经网络03:深度循环神经网络
【深度学习实验】循环神经网络(三):门控制——自定义循环神经网络LSTM(长短期记忆网络)模型
LSTM(长短期记忆网络)是一种循环神经网络(RNN)的变体,用于处理序列数据。它具有记忆单元和门控机制,可以有效地捕捉长期依赖关系。
Qomolangma
2024/07/30
1.5K0
【深度学习实验】循环神经网络(三):门控制——自定义循环神经网络LSTM(长短期记忆网络)模型
【深度学习实验】循环神经网络(五):基于GRU的语言模型训练(包括自定义门控循环单元GRU)
get_params 函数用于初始化模型的参数。它接受三个参数:vocab_size 表示词汇表的大小,num_hiddens 表示隐藏单元的数量,device 表示模型所在的设备(如 CPU 或 GPU)。
Qomolangma
2024/07/30
4110
【深度学习实验】循环神经网络(五):基于GRU的语言模型训练(包括自定义门控循环单元GRU)
动手学深度学习(十二) NLP循环神经网络进阶
RNN存在的问题:梯度较容易出现衰减或爆炸(BPTT) ⻔控循环神经⽹络:捕捉时间序列中时间步距离较⼤的依赖关系 RNN:
致Great
2020/02/25
4730
动手学深度学习(十二)  NLP循环神经网络进阶
【现代深度学习技术】现代循环神经网络04:双向循环神经网络
深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重要的技术特征是具有自动提取特征的能力。神经网络算法、算力和数据是开展深度学习的三要素。深度学习在计算机视觉、自然语言处理、多模态数据分析、科学探索等领域都取得了很多成果。本专栏介绍基于PyTorch的深度学习算法实现。 【GitCode】专栏资源保存在我的GitCode仓库:https://gitcode.com/Morse_Chen/PyTorch_deep_learning。
Francek Chen
2025/05/04
1100
【现代深度学习技术】现代循环神经网络04:双向循环神经网络
从零开始学Pytorch(十一)之ModernRNN
• 重置⻔有助于捕捉时间序列⾥短期的依赖关系; • 更新⻔有助于捕捉时间序列⾥⻓期的依赖关系。
墨明棋妙27
2022/09/23
4390
【深度学习实验】循环神经网络(四):基于 LSTM 的语言模型训练
【深度学习实验】循环神经网络(一):循环神经网络(RNN)模型的实现与梯度裁剪_QomolangmaH的博客-CSDN博客
Qomolangma
2024/07/30
4220
【深度学习实验】循环神经网络(四):基于 LSTM 的语言模型训练
【现代深度学习技术】循环神经网络05:循环神经网络的从零开始实现
  本节将根据循环神经网络中的描述, 从头开始基于循环神经网络实现字符级语言模型。 这样的模型将在H.G.Wells的时光机器数据集上训练。 和前面语言模型和数据集中介绍过的一样, 我们先读取数据集。
Francek Chen
2025/04/22
1100
【现代深度学习技术】循环神经网络05:循环神经网络的从零开始实现
【现代深度学习技术】现代循环神经网络07:序列到序列学习(seq2seq)
  正如我们在机器翻译与数据集中看到的,机器翻译中的输入序列和输出序列都是长度可变的。为了解决这类问题,我们在编码器-解码器架构中设计了一个通用的”编码器-解码器“架构。本节,我们将使用两个循环神经网络的编码器和解码器,并将其应用于序列到序列(sequence to sequence,seq2seq)类的学习任务。
Francek Chen
2025/05/06
1960
【现代深度学习技术】现代循环神经网络07:序列到序列学习(seq2seq)
白话--长短期记忆(LSTM)的几个步骤,附代码!
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
mantch
2019/08/29
1.4K0
白话--长短期记忆(LSTM)的几个步骤,附代码!
用pytorch写个RNN 循环神经网络
持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第4天,点击查看活动详情
程序猿川子
2022/10/21
1K0
循环神经网络——下篇【深度学习】【PyTorch】【d2l】
设计多个隐藏层,目的是为了获取更多的非线性性。深度循环神经网络需要大量的调参(如学习率和修剪) 来确保合适的收敛,模型的初始化也需要谨慎。
来杯Sherry
2023/09/19
4750
循环神经网络——下篇【深度学习】【PyTorch】【d2l】
【AI前沿】深度学习基础:循环神经网络(RNN)
循环神经网络(RNN)与传统的前馈神经网络(如多层感知器和卷积神经网络)不同,RNN具有内存能力,能够在处理当前输入时保留之前的信息。这使得RNN特别适合处理序列数据,如文本、语音和时间序列等。
屿小夏
2024/07/13
3830
【AI前沿】深度学习基础:循环神经网络(RNN)
动手学深度学习(十一) NLP循环神经网络
本节介绍循环神经网络,下图展示了如何基于循环神经网络实现语言模型。我们的目的是基于当前的输入与过去的输入序列,预测序列的下一个字符。循环神经网络引入一个隐藏变量
致Great
2020/02/25
7820
动手学深度学习(十一)  NLP循环神经网络
【深度学习 | LSTM】解开LSTM的秘密:门控机制如何控制信息流
🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能&硬件(虽然硬件还没开始玩,但一直很感兴趣!希望大佬带带)
计算机魔术师
2023/09/24
6930
【现代深度学习技术】循环神经网络06:循环神经网络的简洁实现
深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重要的技术特征是具有自动提取特征的能力。神经网络算法、算力和数据是开展深度学习的三要素。深度学习在计算机视觉、自然语言处理、多模态数据分析、科学探索等领域都取得了很多成果。本专栏介绍基于PyTorch的深度学习算法实现。 【GitCode】专栏资源保存在我的GitCode仓库:https://gitcode.com/Morse_Chen/PyTorch_deep_learning。
Francek Chen
2025/04/26
1150
【现代深度学习技术】循环神经网络06:循环神经网络的简洁实现
LSTM:克服长期依赖难题的循环神经网络升级方案
长短期记忆网络(Long Short-Term Memory)作为RNN的进阶架构,在序列建模领域具有里程碑意义。其核心突破在于通过智能门控系统,有效捕获跨越数百个时间步的语义关联,成功缓解了传统RNN存在的梯度消失/爆炸难题,在语音识别、金融预测等需要长程记忆的场景中表现卓越。
JavaEdge
2025/03/19
2080
推荐阅读
长短期记忆(LSTM):突破性的序列训练技术
5340
循环神经网络——中篇【深度学习】【PyTorch】【d2l】
3960
【现代深度学习技术】现代循环神经网络01:门控循环单元(GRU)
1580
【现代深度学习技术】现代循环神经网络03:深度循环神经网络
1320
【深度学习实验】循环神经网络(三):门控制——自定义循环神经网络LSTM(长短期记忆网络)模型
1.5K0
【深度学习实验】循环神经网络(五):基于GRU的语言模型训练(包括自定义门控循环单元GRU)
4110
动手学深度学习(十二) NLP循环神经网络进阶
4730
【现代深度学习技术】现代循环神经网络04:双向循环神经网络
1100
从零开始学Pytorch(十一)之ModernRNN
4390
【深度学习实验】循环神经网络(四):基于 LSTM 的语言模型训练
4220
【现代深度学习技术】循环神经网络05:循环神经网络的从零开始实现
1100
【现代深度学习技术】现代循环神经网络07:序列到序列学习(seq2seq)
1960
白话--长短期记忆(LSTM)的几个步骤,附代码!
1.4K0
用pytorch写个RNN 循环神经网络
1K0
循环神经网络——下篇【深度学习】【PyTorch】【d2l】
4750
【AI前沿】深度学习基础:循环神经网络(RNN)
3830
动手学深度学习(十一) NLP循环神经网络
7820
【深度学习 | LSTM】解开LSTM的秘密:门控机制如何控制信息流
6930
【现代深度学习技术】循环神经网络06:循环神经网络的简洁实现
1150
LSTM:克服长期依赖难题的循环神经网络升级方案
2080
相关推荐
长短期记忆(LSTM):突破性的序列训练技术
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验