git pull:显示本地仓库与远程仓库有冲突
- Please, commit your changes or stash them before you can merge.
- Aborting
解决办法:
git stash:备份当前的工作区,并且将备份的内容保存到git栈中,同时让工作区内容保持和上一次本人提交的内容一致
git pull:将远程仓库最新的代码pull下来,此时无冲突
git stash pop:从git栈中读取最近一次保存的内容,恢复工作区相关内容,此时,工作区显示冲突
其中Updated upstream 和=====之间的内容就是pull下来的内容,====和stashed changes之间的内容就是本地修改的内容。碰到这种情况,git也不知道哪行内容是需要的,所以要自行确定需要的内容。
解决完成之后,就可以正常的提交了。
git stash其他的语句:
git stash list:查看现有的储藏
stash@{0}: WIP on master: 049d078 added the index file
stash@{1}: WIP on master: c264051 Revert "added file_size"
stash@{2}: WIP on master: 21d80a5 added number to log
stash@{0},stash@{1},stash@{2}为stash的名称
master为branch
049d078,c264051 ,21d80a5 为版本号
added the index file,Revert "added file_size",added number to log为上几次提交的内容
如果不想用git stash恢复最近一次(上次)提交的内容的储藏,
如果你想应用更早的储藏,你可以通过名字指定它:git stash apply stash@{2}