Git 为什么';t从分支切换回主分支会更改我的文件吗?

Git 为什么';t从分支切换回主分支会更改我的文件吗?,git,visual-studio-2012,Git,Visual Studio 2012,我创建了一个名为test的分支 git branch test git checkout test 然后我做了一系列的改变。添加文件、更改文件等 当我签出时,所有分支更改仍然存在。我以为代码会回到分支之前的样子?我是否没有正确理解分支概念 我使用的是Visual Studio和这里的Git插件:您从未提到提交,只是更改和添加。签出分支时,任何尚未提交的更改都会随之进行。如果希望更改保留在特定分支上,则必须在移动到其他分支之前提交更改。否则,如果您只是想暂时隐藏更改,您可以使用将它们存放起来,然

我创建了一个名为
test
的分支

git branch test
git checkout test
然后我做了一系列的改变。添加文件、更改文件等

当我签出时,所有分支更改仍然存在。我以为代码会回到分支之前的样子?我是否没有正确理解分支概念


我使用的是Visual Studio和这里的Git插件:

您从未提到提交,只是更改和添加。签出分支时,任何尚未提交的更改都会随之进行。如果希望更改保留在特定分支上,则必须在移动到其他分支之前提交更改。否则,如果您只是想暂时隐藏更改,您可以使用将它们存放起来,然后
git stash pop
稍后再将它们带回来(在任何分支上)。

您从未提到提交,只提到更改和添加。签出分支时,任何尚未提交的更改都会随之进行。如果希望更改保留在特定分支上,则必须在移动到其他分支之前提交更改。否则,如果您只是想暂时隐藏更改,可以使用将其存放起来,然后
git stash pop
稍后将其带回(在任何分支上)。

添加、更改等文件时,您提交了这些文件吗?如果你不承诺,然后转移到另一个分支,他们会和你一起去。对于那些由于更改未完成而不想提交的情况,您有可能将其隐藏起来。使用git stash,您可以将更改存储在stash部分,稍后当您返回分支时,您可以将其收回

当您添加、更改这些文件时,您是否提交了它们?如果你不承诺,然后转移到另一个分支,他们会和你一起去。对于那些由于更改未完成而不想提交的情况,您有可能将其隐藏起来。使用git stash,您可以将更改存储在stash部分,稍后当您返回分支时,您可以将其取回

Ah,好的。我什么都没做过。谢谢。一个缺点:这并不是说他们“和你一起来”,git完全不知道这些新文件,而且它根本不涉及它们。如果您更改git知道的某个文件,您可以切换分支,修改后的文件保持原样(与主分支上对原始文件的更改没有冲突),现在可以
commit
ed在那里。@vonbrand:True。我试着在一个似乎是初学者水平的问题上不要太深究。啊,好的。我什么都没做过。谢谢。一个缺点:这并不是说他们“和你一起来”,git完全不知道这些新文件,而且它根本不涉及它们。如果您更改git知道的某个文件,您可以切换分支,修改后的文件保持原样(与主分支上对原始文件的更改没有冲突),现在可以
commit
ed在那里。@vonbrand:True。我试着在一个似乎是初学者水平的问题上不要太深究。