git系列问题
git pull 覆盖本地代码 解决
在使用git pull代码时,经常会碰到有覆盖本地代码的情况
解决:
1、先将本地修改存储起来
git stash
这样本地的所有修改就都被暂时存储起来 。查看暂存区堆栈
git stash list
可以看到保存的信息:
其中stash@{0}就是刚才保存的标记。
2、pull内容
暂存了本地修改之后,就可以pull了,拉取远程仓库代码。
git pull origin master
3、还原暂存的内容
重要:
git stash pop stash@{0}
ps:如果需要覆盖就不用暂存
others:
fetch与pull
fetch是将远程主机的最新内容拉到本地,不进行合并
git fetch origin master
pull 则是将远程主机的master分支最新内容拉下来后与当前本地分支直接合并 fetch+merge
git pull origin master
如果远程分支是与当前分支合并,则冒号后面的部分可以省略。如下:
git pull origin master:feature-wxDemo #git pull <远程主机名> <远程分支名>:<本地分支名>
git本地代码恢复
由于误操作,导致代码变成了之前提交的某个版本,而之前的本地代码未提交未暂存,无法从远程仓库拉取,也无法从暂存区拉取!
解决:IDEA 真是个好工具
点击自己的项目,再点击 VCS -> Local History -> Show History
即可看到自己之前的代码,点解回滚箭头
就可以回到之前编辑的代码。
ps:代码消失惊我一身冷汗!