git stash
如果当前正在进行开发,出现一个其他任务,而你现在的任务只做了一半,无法commit,那么你可以使用这个命令.
它会将working directory未提交的内容临时保存起来并清空未提交的内容,这样你就有了一个干净的working directory,来做另外的任务.
在完成了这个任务后可以执行unstash changes来恢复之前保存的任务.
git reset
将HEAD指向选定的commit,它会删除所选commit之后的所有commit,并默认将删除的修改放入working directory,不会修改文件的内容.
git revert
和git reset相反,它不会删除commit,而是会创建一个新的commit进行选中commit的相反操作,把选中的commit操作改回去.
undo commit
将已commit且未push的commit撤回,同样不会修改文件内容
cherry-pick
将选中的commit修改再应用一次,常用于将某一个分支的commit应用到其它分支.