操作撤销、版本回退与HEAD指针
撤销上次提交并重新提交commit
git commit --amend
此选项像是一个追加操作,因为她并不完全撤销上一次的提交信息。
把文件从暂存区撤回到未暂存状态
git reset HEAD <file>
丢弃工作区的修改
git checkout -- <file>
两种情况:
- 回到暂存区的版本,
- 如果没有暂存过,回到git库中最后一次commit的版本。
注意该操作危险,不可撤销,如果你想撤销未保存的操作,为何不使用编辑器自带的ctrl+Z呢?
回到某个文件到git库中的某个版本
git reset --hard <commit id:部分哈希值>
此操作强制把文件回退到git库中的某个版本,如果想会到未来的版本,需要找到那个版本的commit id,查找命令
HEAD与rest详解
HEAD指向当前分支最后一次commit的文件版本。也就是如果要提交新内容,新commit会成为HEAD的新父节点。
reset命令专门用来操作HEAD指针。
常见命令: