git 命令详解_Git容易被忽视的几个好用的功能
Git已经是世界上最流行的版本管理系统了,平时的开发过程中少不了要和git打交道,通常git小白只会用到一些常见的commit、push、pull等命令,今天小编和大家分享一些git中非常好用但又容被忽视的小功能。使用.gitignore场景:一些系统或者 IDE 会在目录下生成与项目不相关的文件,而这些文件我们不期望被提交到仓库之中,如Python运行产生的__pycache__文件夹...
Git已经是世界上最流行的版本管理系统了,平时的开发过程中少不了要和git打交道,通常git小白只会用到一些常见的commit、push、pull等命令,今天小编和大家分享一些git中非常好用但又容被忽视的小功能。
使用.gitignore
场景:
- 一些系统或者 IDE 会在目录下生成与项目不相关的文件,而这些文件我们不期望被提交到仓库之中,如Python运行产生的__pycache__文件夹
- 数据文件特别大,一般不建议上传到仓库,只需要提供一下数据获取方法的文档就好
# 忽略所有.json后缀的文件*.json# 忽略node_modules中所有的文件node_modules/# 忽略foo目录下除去foo/bar/的内容foo/!foo/bar/
参考文档: https://git-scm.com/docs/gitignore
Commit Message 格式
目前规范使用较多的是 Angular 团队的规范, 继而衍生了 Conventional Commits specification. 很多工具也是基于此规范, 它的 message 格式如下:
# head: (): # - type: feat, fix, docs, style, refactor, test, chore# - subject: start with verb (such as 'change'), 50-character line# body: 72-character wrapped. This should answer:# * Why was this change necessary?# * How does it address the problem?# * Are there any side effects?# footer: # - Include a link to the ticket, if any.# - BREAKING CHANGE
大致分为三个部分(使用空行分割):
- 标题行: 必填, 描述主要修改类型和内容
- 主题内容: 描述为什么修改, 做了什么样的修改, 以及开发的思路等等
- 页脚注释: 放参考链接、文档地址、 Breaking Changes 或 Closed Issues
分别由如下部分构成:
- type: commit 的类型
- feat: 新特性
- fix: 修改问题
- refactor: 代码重构
- docs: 文档修改
- style: 代码格式修改, 注意不是 css 修改
- test: 测试用例修改
- chore: 其他修改, 比如构建流程, 依赖管理.
- subject: commit 的概述, 建议符合 50/72 formatting
- body: commit 具体修改内容, 可以分为多行, 建议符合 50/72 formatting
- footer: 一些备注, 通常是 BREAKING CHANGE 或修复的 bug 的链接.
示例:
fix(redis): 修复redis pull异常退出feat(组件):新增redis集群feat(MQ): 新增消息队列包
Commit Message 模板设置
每次commit都要设置格式十分不方便,git提供了一个自定义commit模板的方法,这样在commit的时候,会自动打开模板,我们只需要修改模板中的内容就好。模板设置方法如下:
- 在根目录建立模板文件
如 xxx_template文件,其内容如下:
(): # - type: feat(新特性), fix(修改问题), docs(文档修改), style(代码格式修改, 注意不是 css 修改), refactor(代码重构), test(测试), chore(其他修改, 比如构建流程, 依赖管理)# - scope: (可以为空) 影响的的范围# - subject 提交描述
- 设置模板,命令如下
git config commit.template [模板文件名]
//这个命令只能设置当前分支的提交模板
git config — —global commit.template [模板文件名]
//这个命令能设置全局的提交模板,注意global前面是两杠
例如:
git config --global commit.template xxx_template
设置好以后,以后每次提交代码到git仓库的时候,就会自动打开该模板
历史文章推荐阅读: 从零开始学自然语言处理(四)—— 做 NLP 任务文本 id 化与预训练词向量初始化方法 从零开始学自然语言处理(三)——手把手带你实现word2vec(skip-gram) 从零开始学自然语言处理(二)——手把手带你用代码实现word2vec 从零开始学自然语言处理(一)—— jieba 分词 一文详解NLP语料构建技巧 你不知道的Python环境管理技巧,超级好用! Python快速安装库的靠谱办法 你只会用Python的pip安装包?别错过这些好用功能!开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)