工作总结之git版本穿梭
工作总结之git版本穿梭
前言
前段时间探索了下git的版本回退,然后前两天突然想到,如果回退后悔了怎么办,本次就是来探究这个问题的
简单穿梭(单纯的回到过去和未来)
- 准备工作
提交了 三个版本
此时的远程仓库情况 - 回到过去并强制推送(回到第一个版本)
可以看到远程成功回到了过去 - 后悔了,要回到未来,
git log
此时是看不到第一个版本之后的提交的,需要使用git reflog查看
查看到了最新的版本号 - 回到未来并强制推送(回到未来的最新版本)
可以看到远程又回到了最新版本
ps:本来应该到此就结束了,但是有一种情况是如果在过去提交了代码再回到未来的最新版本会发生什么,或者说,此时是否还能回到未来
在过去的时候push了新的代码是否还能回到未来(原来的最新版本)
- 回到过去并强制推送(回到第一个版本)
远程再次成功回到了过去 - 在过去push了新的代码
在过去push了第四个版本的代码,远程也仍然能同步收到 - 仍然可以回到未来的最新版本
通过这里能看到,是可以回到未来的最新版本 - 在未来的最新版本继续push代码
继续push代码之后,远程也还是可以收到 git log
是看不到在过去提交的第四个版本的记录的,需要使用git reflog
查看