MSBuildとVisualStudioの関係

自動生成を多用しているので*.csprojにファイルをいちいち追加するのが面倒だったがMSBuildを勉強したら

  <ItemGroup>
    <Compile Include="**\*.cs">
      <SubType>Code</SubType>
    </Compile>
  </ItemGroup>

でExcludeもつかえることを知り、これを使うように変えた。
だが他人がファイルを追加してsvn update すると検知してくれずコンパイルエラーになりソリューションを開きなおさなくちゃいけないことがありうざい。あとたまにVisualStudioで追加したときに全部のファイルがデフォルトの一つづつのバージョンに戻ってしまうことがある(原因不明)。

どっちの運用が正しいのだろうか。。。