今天开会,讨论公司的产品。老板检阅了我们最近的工作成果。会议上老板突然提起了一个月之前的一个版本,觉得还不错。想再看看。
当时惊了我一身冷汗,因为项目持续推进了一个月。代码早就改的“面目全非”。我的第一反应是赶紧加班重做一版,但是时间上根本来不及。还得想办法,之前学习git的时候。依稀记得git有一个回滚的功能,Google了一下发现可行。
我可以将当前的代码备份,然后回退到想要的那个版本。当然目标版本之后的代码会全部消失,我觉得这个操作还是太蠢了。因为回退之后,目标版本之后的commit也会清空。
于是又研究了一番,发现git可以根据commit时生成的SHA值,直接拿到目标版本的所有代码。而且不影响当前的代码。
具体操作如下:
1.使用gitbash进入git命令行,查看commit记录。操作如下:
git log
2.找到你想提取的目标版本,复制对应的SHA值。
3.新建一个分支,操作如下:
git branch 新分支名 SHA值
4.切换到新的分支,操作如下:
git checkout 新分支名
接下来,IDE(AndroidStudio)中的代码会自动切换成新分支中的代码,也就是历史版本的代码。
在上述的操作中,我们新建了一个分支用来拉取历史版本并进行操作(修改代码)。而我们当前的代码,也就是主分支中的代码不受任何影响。
转载:https://blog.csdn.net/hanli1992/article/details/82453768