【发布时间】:2016-12-27 03:04:52
【问题描述】:
我创建了一个目标并指定了此tutorial 中描述的输入和输出,以从 SASS 文件构建 CSS 文件。这通常有效,除非我切换到具有旧文件时间戳的旧 Git 分支。在这种情况下,我希望 MSBuild 执行我的目标以重建我的文件,但 MSBuild 跳过它,因为我的输入上的时间戳比我的输出旧,所以 MSBuild 认为我的输出是最新的。
当我切换 Git 分支时,如何让 Visual Studio 以增量方式构建我的 SASS 文件并清理/忽略我的输出?我想避免手动清理我编译的 CSS 文件来强制构建。
【问题讨论】:
-
你可以有一个 postbuild 事件将当前 git hash 和/或提交日期存储在一个文件中,以及一个 prebuild 事件将该文件(如果有)与“新”当前 git hash/ 进行比较日期。如果新的提交比旧的提交更早,则进行干净的构建。
标签: git msbuild incremental-build