前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >git pull --rebase 做了什么? 以及 Cannot rebase: You have unstaged changes 解决办法

git pull --rebase 做了什么? 以及 Cannot rebase: You have unstaged changes 解决办法

作者头像
张拭心 shixinzhang
发布2018-01-05 16:03:27
4.3K0
发布2018-01-05 16:03:27
举报

最近刚学 git rebase,觉得很牛逼的样子, 结果今天就被打脸了。

代码语言:javascript
复制
git pull --rebase

报错:

代码语言:javascript
复制
Cannot rebase: You have unstaged changes
Please commit or stash them.

第一反应是: 不!可!能!刚才明明提交了啊!!怎么还有修改!歇斯底里了!

最后用 git status 一看:

这里写图片描述
这里写图片描述

。。。。

我错了。。。 接个电话,把删了个文件这件事忘记了 - -。

总结:

1.git pull –rebase 理解

这里写图片描述
这里写图片描述

这个命令做了以下内容: a.把你 commit 到本地仓库的内容,取出来放到暂存区(stash)(这时你的工作区是干净的) b.然后从远端拉取代码到本地,由于工作区是干净的,所以不会有冲突 c.从暂存区把你之前提交的内容取出来,跟拉下来的代码合并

所以 rebase 在拉代码前要确保你本地工作区是干净的,如果你本地修改的内容没完全 commit 或者 stash,就会 rebase 失败。

2.还是要听 git 提示的话,要理智,有什么不清楚的,就输入

代码语言:javascript
复制
git status

根据人家提示的来,该提交的提交,stash 的 stash。

3.删除文件后需要 git add -A, 光 git add. 不行,区别如下:

git add 的几种参数区别

git add -A 保存所有的修改 git add . 保存新的添加和修改,但是不包括删除 git add -u 保存修改和删除,但是不包括新建文件。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-09-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 总结:
    • 1.git pull –rebase 理解
      • 2.还是要听 git 提示的话,要理智,有什么不清楚的,就输入
        • 3.删除文件后需要 git add -A, 光 git add. 不行,区别如下:
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档