git: 如何能够再次切换分支

git: how to be able to switch branches again

我有很多未提交的更改,这是不好的做法。 我尝试慢慢提交我所有的重要更改。

我试图跨分支机构重新组织工作,所以我做了(从我的主人开始进行更改):

git checkout -b Feature1
git commit somestuff -ma'msg'
git push remote/Feature1 
git checkout -b Feature2
git commit otherstuff -ma'msg'
git push remote/Feature1 
...

对于多个分支。 然后我发现我的starting master在我开始的时候没有更新,所以我已经完成了

git fetch 
git checkout Feature1
git merge origin/master
git checkout Feature2
git merge origin/master
...

那我应该是最新的和干净的。 然后我修改了Feature2里的一些东西。现在我想切换到 Feature1。然而它说

you have local changes in X; you can't switch branches

但我刚刚提交并将我对 X 的更改推送到 Feature2。 我做错了什么?


如果我这样做

git diff X > atextfile

atextfile 显示整个 X 已更改,但如果我比较标有 - + 的两个版本,它们是相同的

git diff --check X 

returns 仅尾随空格差异。如何摆脱这些?

git status 将显示更改的内容,包括更改的文件 X,git diff X 将显示更改。

如果您想将此更改移到 Feature1 中,您可以使用合并标志进行检出,合并更改 git checkout -m Feature1