合并多条commmit或修改commit消息
git rebase 命令 -i commitid的参数是不需要合并的 commit 的 hash 值。 git rebase -i xxxxxxx 表示哈希值为xxxxxxx的commit之后的所有commit都可以更改。 常用指令如下:
- pick 的意思是要会执行这个 commit
- squash 的意思是这个 commit 会被合并到上一个commit
- edit的意思是修改commit的具体消息
$ git rebase -i commitid
$ git rebase -i HEAD~3
撤销上一次的提交
git reset 有三种模式: soft,mixed,hard. –soft:保留工作目录,并把重置HEAD所带来的新的差异放进暂存区 –mixed(或不加参数):保留工作目录并清空缓存区,缓存区的原来的修改都放在工作目录 –hard:重置暂存区和工作目录,清除上一个commit的所有修改
$ git reset --soft commitid
$ git commit -m "some message"
修改最后一个commit的值
# 修改最后一次提交的 commit 信息
$ git commit --amend --message="modify message" --author="xxxxxx"
# 仅修改 message 信息
$ git commit --amend --message="modify message "
# 仅修改 author 信息
$ git commit --amend --author="xxxxxx"
|