Git报错 Please commit your changes or stash them before you switch branches.
错误原因:
-
未提交的更改(Uncommitted changes):这包括已修改但未暂存(stage)的文件,以及已暂存但未提交的更改
-
未推送的提交(Unpushed commits):如果你的本地分支有提交尚未推送到远程仓库,Git 也会阻止你切换分支
-
暂存当前分支的更改: 由于你当前在
dev
分支上,并且有未提交的更改,你需要先将这些更改暂存起来。bash
git stash
-
切换到远程分支
aaa
: 首先,你需要确保本地有一个与远程分支aaa
对应的分支。如果没有,你可以使用以下命令来创建并切换到这个分支:bash
git checkout -b aaa origin/aaa
这个命令会创建一个名为
aaa
的新本地分支,并将其设置为跟踪远程的aaa
分支。 -
创建新的本地分支
a
: 然后,你可以创建并切换到新的本地分支a
:bash
git checkout -b a
-
应用之前暂存的更改: 将之前暂存的更改应用到新的分支
a
上:bash
git stash apply
如果有冲突,解决冲突后,你需要使用以下命令来完成暂存更改的应用:
bash
git add . git stash drop
-
提交更改: 在新的分支
a
上提交你的更改:bash
git add . git commit -m "Your commit message"
-
推送到远程仓库: 最后,将你的本地分支
a
推送到远程仓库:bash复制
git push -u origin a