1.确定准备回退的分支,例如dev分支;然后切换到dev分支
2.使用日志命令
git log
查看提交记录(因为当前已经切换到dev了,因此查看的是dev的提交记录),找到需要回退到哪次 commit 的位置,记录下 commit 号,例如:
commit 96f6ec9bf41fe0e425f8495d46a52b8f990facd3
< 注意,回退到这次 commit 的位置,是包括这次 commit 提交的代码的 ;如果不想要这次commit提交的代码,那就回退到再上一次 commit的位置 >
3.执行回退命令,会把本地代码回退到这次 commit 时的状态(包括这次commit):
git reset --hard 96f6ec9bf41fe0e425f8495d46a52b8f990facd3
4.执行命令,把本地代码强制推送到远程
git push origin dev --force
说明:
●如果不使用force命令,就无法推送到远程,会冲突。 (当然会冲突,回退代码后本地当前版本与远程版本不一致,例如本地是v0.1,远程是v0.2;如果想让远程也回退成v0.1,只能使用force命令)
●注意,push后,远程的代码提交历史记录就会与本地相同(意思是v0.2版的代码提交记录就没有了;如果v0.2版的提交记录中、还有需要的代码,那就先单独整理出来,然后再执行这个push回退命令)
●origin的意思是,远程的url(.git的网址),这个是之前就配置好的
●dev的意思是,指远程的dev分支
●整个命令的意思是,把本地当前分支的代码强制推送到远程dev分支(忽略冲突,直接覆盖)
|