近期在工作中遇到一个比较有意思的问题,可以抽象为下面这种情况:
有某分支:commit1 <- commit2 <- commit3 <- commit4(<-HEAD),现需要将代码恢复到commit1提交后的状态,并且保持commit2, 3, 4的存在,即需要将分支变成:commit1 <- commit2 <- commit3 <- commit4 <- commit1’(<-HEAD),其中commit1’的代码与commit1相同。在要求只通过git操作来完成的前提下,由对解决此问题的git方法展开一些分析和思考。