这是我参与8月更文挑战的第17天,活动详情查看:8月更文挑战
前言
许多时候,在使用 Git 时,你可能想要修订提交历史。 Git 很棒的一点是它允许你在最后时刻做决定。 你可以在将暂存区内容提交前决定哪些文件进入提交,可以通过 git stash 来决定不与某些内容工作, 也可以重写已经发生的提交就像它们以另一种方式发生的一样。 这可能涉及改变提交的顺序,改变提交中的信息或修改文件,将提交压缩或是拆分, 或完全地移除提交——在将你的工作成果与他人共享之前。
修改最后一次提交
修改你最近一次提交可能是所有修改历史提交的操作中最常见的一个。 对于你的最近一次提交,你往往想做两件事情:简单地修改提交信息, 或者通过添加、移除或修改文件来更改提交实际的内容。 你只是想修改最近一次提交的提交信息,那么很简单:
$ git commit --amend
//上面这条命令会将最后一次的提交信息载入到编辑器中供你修改。
//此操作需要强制提交,需要注意
修改多个提交信息
git可以通过给 git rebase 增加 -i 选项来交互式地运行变基。 必须指定想要重写多久远的历史,这可以通过告诉命令将要变基到的提交来做到。
如果想要修改最近三次提交信息:
$ git rebase -i HEAD~3
合并多个提交信息
我们在提交信息时,有时需要合并多个commit。这样可以使用我们下面的操作:
git reset [commit号] --hard
git add .
git commit -m ''
git push -f
查看提交记录
我们提交之后需要查看commit信息,这就用到了git log
推荐一个查看提交日志的工具,TIG。
tig是git的命令行可视化工具,可以方便地在命令行下完成git的各种操作。
合并一个提交
git cherry-pick 【commit号】
撤销提交
git revert 【commit号】
tig安装:
Ubuntu: apt-get install tig
Mac: brew install tig
具体使用方法可以查看tig -h命令