Visual Studio - 在一个分支中添加文件会将文件添加到所有分支

Visual Studio - adding a file in one branch adds the file to all branches

我在 Visual Studio Enterprise 2017.NET Web API 项目中遇到了一些意外行为。当我在一个分支(不是 master)时,我添加了一些新文件,如控制器和模型,可能从项目中排除一两个文件等。如果我切换回 master ,或任何其他分支,这些相同的文件也被添加 and/or 排除在该分支中。

我以为分支的目的是为了隔离这样的变化?也许文件树中的更改总是跨分支填充,直到现在我才注意到?

Visual Studio 中的这种行为是否符合预期?

我在 Visual Studio 代码中看到了将文件添加到文件系统时的相同行为,但在删除文件时却没有。 Visual Studio Enterprise 可能有所不同,但我认为这是有意为之的。如果您将文件添加到文件系统,他们不想在您在分支之间切换时删除它们。我认为删除的文件可以通过从分支中拉取回来。但是,添加的文件将一直保留,直到您 .gitignore 它们、commit/push 它们或删除它们。