C++ Visual Studio和GIT分支开关导致新文件出现c1xx错误

C++ Visual Studio和GIT分支开关导致新文件出现c1xx错误,c++,git,visual-studio,C++,Git,Visual Studio,我有两个GIT分支。1) 主分支和2)开发分支。我通常在开发分支上工作,最后将其合并到为最终版本编译的主分支中。只要开发分支中没有新文件,一切都很好。如果我在开发分支中添加新类,当我切换回主分支并尝试编译时,我收到如下错误: 错误C1083:无法打开源文件“somepath/tosource.cpp”: 没有这样的文件或目录c1xx 这很奇怪,因为我确保主分支中没有实际存在的文件。所以这意味着VS以某种方式从开发分支保留这些文件的历史记录?我如何清理它,以便在每次向开发分支添加新文件时不需要同

我有两个GIT分支。1) 主分支和2)开发分支。我通常在开发分支上工作,最后将其合并到为最终版本编译的主分支中。只要开发分支中没有新文件,一切都很好。如果我在开发分支中添加新类,当我切换回主分支并尝试编译时,我收到如下错误:

错误C1083:无法打开源文件“somepath/tosource.cpp”:
没有这样的文件或目录c1xx

这很奇怪,因为我确保主分支中没有实际存在的文件。所以这意味着VS以某种方式从开发分支保留这些文件的历史记录?我如何清理它,以便在每次向开发分支添加新文件时不需要同步两个分支

我想象VS的状态存储在某种项目文件中;因此,我认为您也需要控制这些版本。否则,当您切换到其他Git分支时,它的状态不会改变。嗯……您的意思是我需要将.proj文件添加到repo中?您正在运行哪个版本的Visual Studio?您是否记得在切换分支之前提交文件?如果您不这样做,您可能会在工作副本中留下未跟踪的文件,因此,如果您向开发分支添加新文件而不提交它们,那么当您切换到主分支时,它们仍将在您的工作副本中,这可能会给您带来上面看到的编译错误,因为新文件引用的源文件在master中不存在。@Cupcake正在运行2012。确定我commit.GIT甚至不允许在没有commit的情况下切换分支。