【问题标题】:Synchronize files between visual studio projects在 Visual Studio 项目之间同步文件
【发布时间】:2017-06-29 23:35:14
【问题描述】:

我有两个视觉工作室项目。一个是为 Windows 构建的,另一个是为 Linux 和 Mac 构建的。它们使用完全相同的源文件,但具有不同的构建配置并链接到同一个库的两个副本(一个是为 Mono 构建的,另一个是为 .NET 构建的)。

这是一个图表:

    Folder structure:
      -- ProjectA
         -- ProjectA.csproj
         -- CustomSourceA.cs

      -- ProjectB
        -- ProjectB.csproj
        -- CustomSourceB.cs

      -- ProjectCore
        -- CommonFile1.cs
        -- CommonFile2.cs
        ...
  Reference Structure:
    ProjectA -> LibraryA (.NET)
    ProjectA -> Includes entire source code of ProjectCore
    ProjectB -> LibraryB (Mono, a complete source code rewrite of LibraryA)
    ProjectB -> Includes entire source code of ProjectCore

如何同步这些项目,以便从一个项目中添加/删除文件同时从另一个项目中添加/删除文件?到目前为止,我一直在手动执行此操作。我考虑过编写一个只解析 XML 并为我完成的脚本,但我想知道是否有不涉及这种手动黑客的解决方案。

【问题讨论】:

    标签: c# .net visual-studio-2013 mono


    【解决方案1】:

    我最终使用了一个小技巧来做到这一点。将项目 B 中的所有包含替换为通配符:

      <!-- ProjectB.csproj -->
      <ItemGroup>
         <Compile Include="..\ProjectA\**\*.cs"/>
      </ItemGroup>
    

    然后我在项目 A 中添加了一个编译标志,而我不希望在项目 B 中使用它

    //CustomSourceA.cs
    #if PROJECT_A
    
    #endif
    

    【讨论】:

      猜你喜欢
      • 2018-01-04
      • 1970-01-01
      • 2020-07-06
      • 2015-08-13
      • 1970-01-01
      • 1970-01-01
      • 2011-09-01
      • 2011-02-26
      • 2015-07-30
      相关资源
      最近更新 更多