私が達成しようとしているのは、プロジェクトの変更がビルド中に検出されているため、プロジェクトが変更されたことを示すフラグを設定できます。私はすでにインクリメンタルビルドとCoreCompileDependsOnを利用してC#コンポーネントがいつ変更されたかを検出する方法を考え出しました。しかし、これは、プロジェクトのコンテンツファイルが変更されたときには起動しないようです。私が理解しているところでは、プロジェクト内のコンテンツファイルの設定に応じて、SkipUnchangedFiles = "true"を指定するコピータスクがあります。出力ディレクトリにコピーします(コピーしない、常にコピーする、新しい場合コピーする)。私は、このプロセスがどこに起こるのかは完全にはわかりません。おそらくMicrosoft.CSharp.targetsファイルですか?誰かが、更新されたファイルがbin出力にコピーされた場合にのみ実行する依存タスクをどのように追加するかについてアドバイスしてもらえますか?非常に単純な例で十分です。MSBuildターゲット - .csprojコンテンツファイルの変更を検出する方法
0
A
答えて
2
私はそれを理解しました。
<Target Name="ContentFilesUpdated" AfterTargets="_CopyOutOfDateSourceItemsToOutputDirectory" Condition="'$(IsDesktopBuild)' == 'False'">
<WriteLinesToFile
File="@(ProductChangeFile)"
Lines="$(ProjectName)"
Overwrite="false"
Encoding="Unicode" Condition="!Exists('@(ProductChangeFile)')"/>
関連する問題
- 1. MSBuild not building csproj
- 2. オーバーライドされたMSBuildターゲットを呼び出す方法
- 3. 車のターゲット方法を変更する
- 4. ターゲットの出力ディレクトリを変更する方法
- 5. MSBuild - ターゲット依存インポート
- 6. Angular2デフォルトの変更検出方法を変更する
- 7. MSBuild、.csprojからすべてのプロジェクト参照を取得する方法
- 8. MsBuild TransformXmlタスク| TFSビルドエージェントのみをターゲットにする方法
- 9. MSBuild _WPPCopyWebApplicationターゲットのクリーニングを停止する方法App_Dataフォルダ
- 10. スタンドアロンMSBuildスクリプトでNuGetターゲットを個別に呼び出すことなく、ターゲットを復元する方法
- 11. 更新時にパッケージコードの変更を検出する方法(スモールアップデート)
- 12. 変数の変更を検出する方法は?
- 13. 新しいcsprojビルドシステムを使用してcsprojでAssemblyProductを定義する方法
- 14. 新しいcsproj/msbuildベースのプロジェクトで更新されたdotnetリストア?
- 15. 複数のターゲットを持つCSPROJのXMLドキュメントを生成する方法
- 16. XNAのコンテンツファイルをポイントする方法
- 17. 角度検出での変更検出の使用方法
- 18. プログラムでcsprojファイルを変更する
- 19. 行の色を変更してオブジェクトを検出する方法
- 20. Angular 4のフォームコントロールアレイの変更を検出する方法は?
- 21. Eclipseクラスパスコンテナの内容の変更を検出する方法は?
- 22. NHibernateのコレクションの変更を検出する方法
- 23. サードパーティライブラリのangular2変更の検出を無効にする方法
- 24. MSBuildからログに変数値を出力する方法
- 25. jQueryでhtml要素の変更を検出する方法
- 26. Eclipseでビューのサイズ変更を検出する方法
- 27. ブートストラップマルチセレクションの変更を検出する方法
- 28. iFrame内のフォント変更を検出する方法
- 29. 角度2.0、子コンポーネントのルート変更を検出する方法
- 30. ロケーションの変更を検出する方法
これはあなたが望むものではないかもしれません、これはセット「新しい場合はコピー」を持っているすべてのコンテンツファイルは、ビルド時に変更された場合のみ、プロジェクトの名前でテキストファイルを作成しますgit repoを作ってgitコマンドでスクリプトを実行して、荒れ狂った変更があるかどうかを調べることはできませんか? –
残念ながら、これはTFSのみを使用する会社にあります。また、TFSでも同じことをすることができますが、VCSを使用して変更を識別したくない場合は、変更をプロジェクトにマップして製品名を識別できるようにする必要があります。 MSBuildターゲットを使用すると、プロジェクト内の何かが変更された場合、私はすでにプロジェクトに関する詳細を持っています。 –
私はMSのビルドについての知識はあまり良くありませんが、私の他の邪魔な気持ちはハリやガルプを見ているように感じます。 –