MSBuild スクリプトでSvnInfo タスクを使用します。
<SvnInfo LocalPath="$(Sources)">
<Output TaskParameter="Revision" PropertyName="Revision" />
</SvnInfo>
$(Sources)
ソース ファイルのみが含まれます。
明らかSvnInfo
に のファイルに依存します$(Sources)
。次に、Target は info を使用してリビジョン番号付きの出力ファイルを生成します。
実際、リビジョン番号が変更されたときに SvnInfo を実行したいのですが、リビジョン番号が以前の実行と同じ場合はターゲットを実行しません (インクリメンタル ビルドを使用)。
ターゲット(タスクの呼び出しを含むタグの属性Inputs
)で正しく入力を指定する方法は?Target
SvnInfo
私は次の方法でそれを作りました:
<ItemGroup>
<Target1Inputs Include="$(Sources)\**" />
</ItemGroup>
<Target Name="Target1" Inputs="@(Target1Inputs)" Outputs="...">
...
<!-- SvnInfo call here -->
<!-- File with revision number is created here -->
</Target>
理想的には、どのファイルSvnInfo
が依存しているかを推測せずに知る必要があるため、回避策のように思えます。そのような情報を入手することは可能ですか?
.svn
また、フォルダーが変更されているかどうかもわかりません。