0
点赞
收藏
分享

微信扫一扫

Git学习笔记(四)——commit建议规范

雨鸣静声 2022-02-10 阅读 89
git

**Do one thing and do it well:**一个提交中只做一件完整的小事,一次把它做好
提交做小,方便评审,提交原子化,包含单个修改

一、提交节点修复

1、拆分提交

拆分当前提交:

回溯头指针,将当前提交的修改保留在工作区,从暂存区撤出

git reset HEAD~1

然后依次新增提交

git add -p 
git commit

在这里插入图片描述

2、拆分历史提交

首先回溯当前工作区和暂存区至需要修改的提交

git rebase -i B^
### > 选择
edit B
pick C

然后使用拆分当前提交的方法,将历史提交拆分后,继续执行rebase,让提交C自动改到拆分后的提交之后。

git rebase --contine

在这里插入图片描述

2、修改提交

当发现提交代码含有缺陷的时候,我们需要着手修复缺陷,但修复后再次提交就会出现,修复xxx提交的相关信息,但这样不便于评审,也不便于使用git bisect定位问题,因此需要通过其他方法来完成

修改当前提交

借助git add在工作区修复缺陷

git add .
git add commit --amend

在这里插入图片描述

修改历史提交

同样在当前工作区修复历史提交中的缺陷,然后使用git add,git rebase完成修复和历史提交合并。

git add.
git commit --fixup A
git rebase -i --autosquash A^

在这里插入图片描述

二、提交说明

提交说明主要包含四个部分:

  • 提交标题:
  • 提交标题后紧跟一个空行:为了区分标题和主体
  • 提交主题内容
  • 签名区

1、提交标题

  • 简明说明提交涉及的改动内容
  • 尽量不超过50个字符:常把提交说明作为邮件标题,邮件标题有字数限制
  • 一般建议使用英文:git format-path等指令转换补丁时,中文可能出错
  • 建议增加前缀,区分改动范围

eg: upload:add – rerun option to ignore published ref

2、提交主体

  • 单行超过72字符换行
  • 详细说明提交改动内容、解决的问题、解决方案的合理性等
  • 可以使用makedown语法提高可读性

3、签名区

  • Repoted-by:问题报告者
  • Reviewed-by:代码评审者
  • Signed-off-by:为提交添加背书,通常由作者添加,git commit -s参数添加
  • Helped-by:帮助者

4、修改提交说明

与修改历史提交缺陷思路相似,借助rebase完成修改合并

git commit --fixup=reword:A
git rebase -i -autosquash A^

在这里插入图片描述

举报

相关推荐

0 条评论