首先怎么本地修改的代码崩了,怎么放弃修改{把修改的代码全覆盖了},拉取远程 开发时,对于本地的项目中修改不做保存操作(或代码改崩),可以用到Git pull的强制覆盖,具体代码如下:
1. git fetch --all //git fetch 指令是下载远程仓库最新内容,不做合并
2. git reset --hard origin/master //git reset 指令把HEAD指向master最新版本
3. git pull //可以省略,上边两部之后代码就变成远端的代码了,本地修改的就给你覆盖了
项目中git怎么回退到之前的版本 两种方法:回退(reset)、反做(revert)。
方法一:git reset 适用场景:如果想恢复到之前某个提交的版本,且那个版本之后提交的版本我们都不要了,就可以用这种方法。 原理: git reset的作用是修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本,如下图所示,假设我们要回退到版本一:
具体操作:
方法二 git revert 适用场景:如果我们想恢复之前的某一版本(该版本不是merge类型),但是又不想保留该目标版本后面的版本,记录下这整个版本变动流程,就可以用这种方法。 原理: git revert的作用通过反做创建一个新的版本,这个版本的内容与我们要回退到的目标版本一样,但是HEAD指针是指向这个新生成的版本,而不是目标版本。如下图所示,假设我们要回退到版本一,版本四的内容和版本一是一样的:
具体操作: 1.查看版本号:git log 2. 使用“git revert -n 版本号”反做,并使用“git commit -m 版本名”提交: 3. git push推送