git stash 栈
git stash
git pull
git stash pop
当pull出现冲突时
- 将修改项存入栈中
- pull 拉取远程代码到本地
- 从栈中取出修改项
- 接下来diff一下此文件看看自动合并的情况,并作出相应修改。
git stash
: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。git stash pop
: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。git stash list
: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。git stash clear
: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。
放弃本地修改
git reset --hard ****
git pull
返回某一次commit前的代码,·****
如果不填写,则效果为放弃本地修改
****
:为git log
显示的commit编码前六位(或者更多为,六位足够定位)表示回到某一次提交
git checkout -- .
同样可以放弃本地修改
撤销分支
撤销到刚刚commit
的分支
git reset --soft head^
一个^
表示回到上一次提交,两个那就是回到上上一次提交喽~
强行冲掉之前的分支
git push origin [分支名称] --force
删除分支
git branch -d [分支名称]