git切换到别的分支,把修改也带过去了
git切换到别的分支,把修改也带过去了
问题
- 开发中建立了一个
dev分支,修改了一些东西,然后想切换到master,发现把dev上修改的内容也给带过去了。
解决
- 切换分支前先
git commit一下
原因
- 因为每一次的修改如果没有
commit,他都属于在工作区,而工作区是全局的,那么在dev下修改的内容没有commit,也就不属于dev,这时候切换回master,git status一下,git就会发现把当前工作区和master进行对比,发现有文件修改了。 - 新建/修改的文件没有被纳入当前分支
dev的版本管理,所以会被带到切换的分支
引申的问题
- 那么如果当前的修改还未完成,不想
commit,但又着急切换到别的分支呢?
那就git stash一下(当前分支或者别的分支上都可以进行),把当前的修改保存一下,注意这里是保存而不是add到暂存区,等回到开发分支就可以git stash pop出来
拓展
-
重点 ,工作区和暂存区是公共的。
-
工作区、暂存区、版本库之间的对比
| 命令 | 作用 |
|---|---|
| git diff | 工作区 vs 暂存区 |
| git diff head | 工作区 vs 版本库 |
| git diff --cached | 暂存区 vs 版本库 |
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
