idea使用版本回退并同步远程仓库

方式一:回退不覆盖历史记录

这种方式就是先将所有本地区域(工作区,缓存区和本地仓库,具体区别查看附录一)还原成想要回退的版本,之后再将缓存区和本地仓库的代码回退到最新版本,这时再提交代码就相当于在最新版本的环境下修改工作区代码了。

第一步:先复制最新版本的版本号。

第二步:选择hard方式(查看附录一)回退到想要回退的版本。

第三步:再选择mixed方式(查看附录一)回退到最新版本。

 第四步:重新commit+push。

方式二:完全回退到想回退的版本

这种方式就是先将所有本地区域(工作区,缓存区和本地仓库,具体区别查看附录一)还原成想要回退的版本,之后直接强制提交。

第一步:选择hard方式(查看附录一)回退到想要回退的版本。

第二步:在项目目录使用git push -f强制提交。

附录一:git的soft,mixed,hard,keep的区别

工作区:就是代码区

暂存区:.git/index

本地仓库:.git

1.soft

 (1)移动本地仓库head指针

意思就是只移动本地仓库的指针,暂存区和工作区的不变,之前commit过的代码变回绿色未上传状态。

2.mixed

(1) 移动本地库HEAD指针

(2) 重置暂存区

意思就是移动本地仓库的指针,并且重置暂存区。但工作区的不变,之前commit和add过的代码变回红色状态。

3.hard

(1) 移动本地库HEAD指针

(2) 重置暂存区

(3)重置工作区

意思就是移动本地仓库的指针,并且重置暂存区和工作区,相当于重置所有文件包括新增的到当前回退版本状态。

4.keep

(1) 移动本地库HEAD指针

(2) 暂存区不变

(3) 工作区如果有改动,会有提示是否合并

意思就是移动本地仓库的指针,并且重置工作区。也就是除了暂存区不变,其他的部分都回退到回退版本。

posted @ 2022-07-13 10:29  liwinallucky  阅读(1587)  评论(0)    收藏  举报