IDEA中GIT远程版本回退

原创
2017/11/03 09:53
阅读数 1.4W

工作中遇到git远程仓库需要回退到历史版本的问题,根据网上的搜索结果结合自己的实践,整理了如下步骤:

1. 在“Show History”中找到当前版本(取名:newVersion)和想要回退到的版本(oldVersion) 
ShowHistory

2. 选择newVersion和oldVersion点击“Copy Revision Number”复制两个版本的版本号: 
newVersion:2746f428a3d3d000bd1b0e886ef8167e1f73ec9c  
oldVersion :6bc5691cbe7304cb185b70fbc0dd975c7de86e8a 
Copy Revision Number

3. 右击项目依次选中:Git->Repository->Reset HEAD 
Reset HEAD

4. 选中Reset Type:*Hard, To Commit:6bc5691cbe7304cb185b70fbc0dd975c7de86e8a;然后点击Reset按钮* 
hardReset

5. 这时本地代码已经回退到oldVersion,这时候如果直接push到远程仓库,会提示版本冲突,点击“cancel”取消。 
push

pushRejected

6. 下面有两种解决冲突的方法 
方法一 :不解决,直接强制提交: 
a. 打开Terminal,切换到项目所在目录 
b. 执行:spring-mvc $git push -f 
terminal

方法二: 
a. 右击项目依次选中:Git->Repository->Reset HEAD 
b. 选中Reset Type:Mixed, To Commit:2746f428a3d3d000bd1b0e886ef8167e1f73ec9c;然后点击Reset按钮 
mixedReset
c. 这时你会发现,最新版本有回到newVersion。但是代码还是oldVersion的代码,这时候重push到远程仓库就不会版本冲突了 
7. 方法一vs方法二 
方法一会将回退的提交记录抹点,而方法二会保留 
8. Done

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部