1. 查看历史,打开gitk程序
2. 选中需要返回的版本,右键,然后点击Rest master branch to here
3.出现弹窗
每个选项我们都试一下,从Hard开始
返回的选项
- Hard
- Mixed
- Soft
Hard
会丢失所有的修改【此处的修改包含新增的文件也会没了】,并回退到上一个版本
变动后,可以看到OtherFile回退到上一次的提交了。
如果想放弃这一次的回退那么可以对想要跳转过去的版本选择reset,依旧是Hard模式。
警告:如果你关闭了gitk的窗口那么想取消掉回退的操作只能使用命令行了。
Mixed
回退后上一次版本提交的内容,变为未缓存
Mix回退后提交,点击File的Update,可以看到与原版本有了分岔路。
点击File,Reload,“新增文件第一次改动“的分岔不见了
跨一个版本回退,情况如何?可以看到所有修改都没有变化,但是版本回退,并且返回到未缓存状态
Soft
回退后上一次版本提交的内容变为已缓存的文件,类似修正上次提交。其他情况与Mixed类似。
总结来说
hard模式是将所有文件操作都回退,soft和hard变为上一次未提交的状态。