SourceTree超前一个版本,落后N个版本
2016-12-08 23:27
357 查看
SourceTree超前一个版本,落后N个版本
在使用SourceTree的时候经常会遇见超前一个版本,落后N个版本的情况,遇见这种情况应该怎么办呢?首先打开终端,最好是从SourceTree里面打开,菜单栏有个终端按钮。然后输入:
$ git reset --hard HEAD^这句话的意思是将自己最近的一次提交撤销,回到push之前的状态。但是所有commit的内容就都消失了。非常不建议用这个参数,会牺牲太多的代码。。如果不想让commit消失,可以改一下参数。用这个参数可以保证你提交的代码原封不动的保存下来。前提是你本地的工作台是干净的。。把所有代码都暂存。
$ git reset --soft HEAD^
执行这句话之后重新拉取一遍代码就可以了,push的都会撤销回来。如果想一次回退多个push,可以这样:(例子是撤销最近三次的提交)
$ git reset --soft HEAD~3
如果想回退到某个指定版本,在终端中输入:
$ git reset --soft 12345671234567是要回退到的版本号,根据具体情况而定,这里只是举例子。
版本号可以不写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。
最后总结一下:
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令
git reset --hard commit_id。
穿梭前,用
git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用
git reflog查看命令历史,以便确定要回到未来的哪个版本。
相关文章推荐
- SourceTree超前一个版本,落后N个版本
- git 超前一个版本 落后一个版本的解决方案
- git版本超前了N个版本且落后了N个版本的解决办法
- git版本超前了N个版本且落后了N个版本的解决办法
- [20081226更新(加了日文版本支持)]一个JavaScript WEB日历控件,支持IE6,FireFox,可支持不同语言版本,目前支持中文简繁,英,日语
- 一个简单的iTextSharp的ASP.NET的例子(根据iText的jsp版本转换而来)
- 一个从MS站点转载的各个不同Windows Server 2003版本的特性对照表
- Series60的2.1版本的模拟器编码转换的一个小bug
- 不同版本的控件在同一个项目中能否一起使用
- 一个调查结果(在下一个版本的VS/C#中你想要什么?)
- 一个JavaScript WEB日历控件,支持IE6,FireFox,可支持不同语言版本,目前支持中英文。
- Winpcap不同版本之间的一个小差异导致的错误。
- 同一个网站,根站点和虚拟目录站点 ASP.net 版本不一样,存在的一个麻烦问题。
- 发现了一个很适合新手用的Linux版本
- 一个c#.net存储过程版本的分页,支持百万数据分页
- 推荐一个linux版本ubuntu
- 搞了一上午,原来是Cf1.0在windows mobile 2003 se版本的一个bug
- DOTNETARX(一个用于.net开发AutoCAD程序的类库)实例教学(2.1版本)
- 修正了版本管理实现中的一个bug
- 用WinCVS得到某一个版本的文件