ソリューション内の特定のプロジェクトのビルドを禁止したい (知っておく必要がある場合は、コミット ビルド フィードバックの速度を最適化するために、TeamCity ビルド構成内)。
私はソリューション構成メカニズムを認識しています.sln
が、スイッチをオフにしたいもののすべての順列で多くのファイルを強制する必要はありません。「コミット ビルドを実行している場合、最終的なインストーラのパッケージングは実行したくない」と言いたい、規則に基づくルールがあります。(そして、それを別のソリューションに分割したくありません)。
.sln
ファイル内または.xml で.proj
作成されたファイル内での検索と置換を含むソリューションは使用したくありません[MsBuildEmitSolution][1]
。すぐに使用できるソリューションと、このわずかに関連する質問をカバーする質問がここにあることを認識しています。
私はMSBuild/v:diag
が言っているのを見ます:
2>Target "Build" in file "Z.sln.metaproj" from project "Z.sln" (entry point):
Using "MSBuild" task from assembly "Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
Task "MSBuild"
Global Properties:
BuildingSolutionFile=true
CurrentSolutionConfigurationContents=<SolutionConfiguration>
<ProjectConfiguration Project="{C83D035D-169B-4023-9BEE-1790C9FE22AB}" AbsolutePath="X.csproj" BuildProjectInSolution="True">Debug|AnyCPU</ProjectConfiguration>
<ProjectConfiguration Project="{15E7887D-F1DB-4D85-8454-E4EF5CBDE6D5}" AbsolutePath="Y.csproj" BuildProjectInSolution="True">Debug|AnyCPU</ProjectConfiguration>
</SolutionConfiguration>
質問は次のとおりです。
上記のプロジェクト Yに変更する効果を得るために、XPath の置換などを行うためのきちんとした方法はありますかBuildProjectInSolution="
True
"
BuildProjectInSolution="
False
"
.ccproj
それができない場合、 (Azure 1.4 パッケージ) または(一般的なプロジェクト) ファイル内で実行できる比較的簡単な編集で、コマンドラインソリューション ビルド.csproj
内で有効になっているプロジェクトの効果 (依存プロジェクトのトリガーを含む) を発生させることができますか?msbuild Z.sln
無効になる?