要在 Git 中切换分支,你可以使用 git checkout 命令。
a.创建新分支并切换到该分支
如果你想要创建一个新分支并立即切换到该分支,可以使用以下命令:
git checkout -b 新分支名
- 这会创建一个名为 新分支名 的新分支,并将你的工作目录和状态切换到这个新分支。
b.切换到已存在的分支
如果你想切换到已存在的分支,可以使用以下命令:
git checkout 已存在的分支名
- 这会将你的工作目录和状态切换到指定的已存在分支。
c.注意
在 Git 中
切换分支前
,请确保你的工作目录是干净的
,没有未提交的更改。如果有未提交的更改,可以使用
git stash # 命令将这些更改暂存起来,然后再切换分支
git stash # 暂存当前的更改
git checkout 分支名 # 切换到另一个分支
git stash pop # 切换原分支后,恢复之前暂存的更改
- 这样可以在不丢失当前更改的情况下切换到另一个分支。
场景:
企业中,一个服务经常是多人开发,所以会有很多分支,这个时候你新建的分支上写了很多代码但是还未提交,突然你的宝贝儿叫你在分支(比如:v202311_aliyun
上打个包),于是你急急忙忙切换到了v202311_aliyun
分支,突然出现图1 1
此处直接选择 Rebase onto Remote
即可 ;但是下次切换分支仍会出问题,这时候我们就要用到 git stash # 命令将这些更改暂存起来,然后再切换分支
执行完后发现 本地未提交的都暂存起来看不见了
这个时候我们再去切换分支已经没有任何问题,但是等我们切回原先分支如何把 暂存的代码显示出来呢?这就要执行git stash pop
命令 ,然后刷新 工程即可展示。
-
- a. 这个提示意味着你的本地分支
springboot-learn
包含一些在远程origin/springboot-learn
分支上不存在的提交.
b. 这可能是因为其他人或者你在本地做了一些提交,但还没有推送到远程仓库
;
c. Git 给出的建议是要么将本地分支上的提交变基(rebase)到远程分支上[Rebase onto Remote
],让两个分支的提交历史保持一致,要么放弃本地的提交并从远程分支拉取最新的更改[Drop Local Commits
]。
- a. 这个提示意味着你的本地分支