我的MSBuild腳本中使用SvnInfo task:MSBuild SvnInfo - 哪些目標輸入正確?
<SvnInfo LocalPath="$(Sources)">
<Output TaskParameter="Revision" PropertyName="Revision" />
</SvnInfo>
$(Sources)
只包含源文件。
顯然SvnInfo
取決於$(Sources)
中的文件。 Target然後使用info生成帶有修訂號的輸出文件。
事實上,我想在版本號更改時運行SvnInfo,但在版本號與上次運行相同時不運行Target(使用增量版本)。
如何在目標中指定正確的輸入(屬性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
文件夾。
所以你問怎麼填寫「@(Target1Inputs)」的文件或你是什麼意思? – sll
@sllev我在問什麼在Target標籤的Input屬性中指定。我提出了我的變體,但我不確定。 (更新後的問題) – sergtk
查看我的答案,如果您的意思是別的,請讓我知道 – sll