介绍
??代码回退包含两种情况,对应reset和revert指令;reset是回退代码到某一版本,某一版本以后的代码都不保存,revert是只回退某一版本代码,对齐它版本代码不影响。对于多人协作开发任务,更推荐使用第二种方法回退代码。回退代码流程同样分为三步:首先查看日志,确定要回退的代码版本,再回退到该版本,最后提交代码,现对该两种方法流程都给出指令说明:
1)回退到某一版本
git log
git reset --hard [目标版本号]
git push -f
2)回退某一版本代码
git log
git revert [要回退的版本号]
git status
git add .
git commit -m “”
git push
使用reset 回退代码以后,本地保留回退的所有代码,可以选择对提交错误的地方修改之后提交,也可以选择不提交,不提交后执行push命令,远程分支代码将回退到对应的版本。 使用revert 回退代码,只会撤回某一版本的代码,对应版本的日志将保留,相对于reset 更为安全。
使用
举个例子,现在有A版本、B版本,两个版本的代码提交,B版本在A版本之后提交,这个时候若需要回退B版本的代码; 若使用reset ,就需要使用:git revert [A版本号] ,此时git分支代码将回退到A版本; 若使用revert ,使用命令为git revert [B版本号] ;此时将在B版本上生成一个全新的版本C,相当于对B版本提交做逆操作。
|