commit
最后更新于:2022-04-02 02:52:41
[TOC]
## 概述
## 场景
### -a 修改文件直接提交,无需add
修改文件后不需要执行 git add 命令,直接来提交
示例:
```
git commit -a -m "add README.md"
```
### --amend 追加上一次的提交
它可以在不增加一个新的commit-id的情况下将新修改的代码追加到前一次的commit-id中
示例
1. 自动提交,没有交互界面
```
git commit --amend -C head
```
2. 有交互界面,把需要的文件删除 # 注释
```
git commit --amend -C
```
3. 追加的提交不是最近
```
// reset 到最近的commit
git reset --hard commit-id
git commit --amend
git push
```
### —fixup/—squash 修正某个 commit 的提交
当前添加的 commit 是以前某一个 commit 的修正。以后执行互动式的git rebase的时候,这两个 commit 将会合并成一个
示例
```
git commit --fixup
```
提交说明将自动生成,即在目标 commit 的提交说明的最前面,添加“fixup! ”这个词
### --allow-empty 提交空修改
可以提交一次空的修改
```
git commit --allow-empty -m '啥也没改'
```
';