【git】git保存当前状态切换分支的方法

来源:互联网 发布:python datetime 减法 编辑:程序博客网 时间:2024/05/18 03:16

情况:在修改一个项目的时候,突然又有其他分支项目需要修改bug。git官方文档有句话“切换分支的时候最好保持一个清洁的工作区域。”,不知道我的理解是不是正确的。如果你当前分支有修改,但是还没有commit,如果你要切换分支的话,最好就是把内容都commit了?还是只用add到暂存区,下次回来可以继续。

首先对于本地代码分有如下几种处理方式:1. add并且commit,再checkout,提交到当前分支2. add但不commit,可以stash,然后checkout回来之后stash apply,在commit,提交到当前分支3. add但不commit,也不stash,直接checkout,然后再commit的话,记录就在切换分支下面。

切换回来的时候用git stash apply重新获取刚才的变更,其背后的原因:一个本地的git repo只有一个工作区和暂存区,但是有多个分支的提交区,而我们的checkout只是将HEAD指针从一个分支切换到另一个分支。

然后开始下载其他分支1.查看远程分支git branch -r2.更新所有分支索引git fetch3.从远程下载分支并切换git checkout -b 本地分支名 origin/远程分支名