当前位置:   article > 正文

git stash让你在分支间切换自如,工作更高效_git stash pull

git stash pull

stash命令能够将还未commit的代码暂存起来,让你的工作目录变干净。stash一般用于修复紧急bug的。

文章目录


一、stash常见的命令

应用场景:

你正在feature分支上开发新功能,突然你的领导告诉你线上有bug,必须马上修复。

此时新功能开发到一半,你又要切换到master分支修复bug,这时就会报错。因为当前文件更改了,需要提交commit保持工作区干净才能切换分支

命令使用:

git stash

这样代码就被保存起来了,当你修复完线上问题,切回feature分支,想恢复代码也只需要:

git stash pop

相关命令:

1、git push

保存当前未commit的代码

2、git stash save "备注的内容"

3、git stash list 

列出stash的所有记录

4、git stash clear

删除stash的所有记录

5、git stash apply

应用最近一次的stash

6、git stash pop

应用最近一次的stash,随后删除该记录

7、git stash drop

删除最近的一次stash

当有多条stash,可以指定操作stash,首先使用stash list列出所有记录:

git stash list

[email protected]{0}:WIP on...

[email protected]{1}:WIP on...

[email protected]{2}:On...

应用第二条记录:

git stash apply [email protected]{1}

pop,drop同理...

二、pull--->push的过程

pull代码的时候:工作区、暂存区、本地库的版本是一致的。

所以我们在pull之前,先将修改后的代码stash或者commit。这时候远程端的代码就会自动合并到本地的代码,如果发生了冲突就得我们自己手动合并。

1.解决方法一

通过git pull拉取远程仓库文件到本地仓库,如果发生冲突会提示,根据提示解决冲突。解决冲突后,提交到本地仓库,再推送到远程仓库。

git pull

手动解决冲突

git add

git commit -m""

git push origin master

2.解决方法二

使用git stash解决git pull时的代码。有两种场景:

(1)我们只是想git pull更新代码,因为可能我们正在开发的代码需要依赖别人提交到远程端的代码,这时候我们还没开发完,还不想产生新的commit。

a.先将本地所有修改存储起来

git stash

再用git stash list可以看到保存的信息

b.git pull内容

暂存本的修改之后,就可以pull了

c.还原暂存的内容

git stash pop [暂存标记]

d.git add

e.git commit -m""

f.git push origin master

(2)为了fix一个紧急的bug,先stash,使自己返回到自己上一个commit,改完bug之后再stash pop,继续原来的工作。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/931082
推荐阅读
相关标签
  

闽ICP备14008679号