使用 MSBuild 部署额外文件

发布于 2024-12-25 18:25:08 字数 211 浏览 0 评论 0原文

我们使用 Teamcity、Git 和 MSBuild 来部署我们的网站。

我们的网站运行 Sitecore CMS。它需要位于根目录中,而不是虚拟目录中。

我不想将所有数百个 Sitecore 相关文件包含到我们的代码存储库中,因为它们永远不会改变。我可以在站点部署后将它们复制进来,但这会增加每次构建的时间,而且效率似乎很低。

有更好的方法来实现这一点吗?

We're using Teamcity, Git, and MSBuild to deploy our website.

Our website runs the Sitecore CMS. It needs to be in the root directory, not a virtual directory.

I don't want to include all hundreds of Sitecore related files into our code repository, as they never change. I am able to xcopy them in after the site is deployed, but that adds a minute to each build and seems inefficient.

Is there a better way to accomplish this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

小红帽 2025-01-01 18:25:08

您可以使用 MSBuild “增量”复制文件。它称为批处理。 MSBuild 将输入文件的日期时间戳与输出的日期时间戳进行比较,如果某些输入日期时间 >输出日期时间然后目标或任务将被执行。

You can use MSBuild to copy your files "incrementally". It is called batching. MSBuild compare datetime stamp of input files with datetime stamp of outputs and if some of inputs datetime > output datetime then target or task will be executed.

怪异←思 2025-01-01 18:25:08

您可以查看增量构建。它检查以前构建的组件是否仍然是最新的,因此不需要重建或与部署服务器同步。它仅重新构建已更改的文件。但是,如果您的构建机器发生变化或者您的构建在编译之前被清理,那么时间戳可能会给您带来问题。

如果您的文件内容没有更改,但是当您从源代码管理中拉取代码并且文件的时间戳设置为构建开始时构建机器的当前时间时,您可以考虑应用部署文件和构建文件的 SHA 哈希代码。

由于 SHA 哈希码不查看时间戳,因此它允许您仅复制文件内容发生更改的文件。

You could look into Incremental Builds. It checks for previously built components that are still up-to-date and therefore do not need to be rebuild or synced with the deployment server. It only re-builds files that have changed. However, if your build machine changes or your builds are cleaned before compiling then the time stamps could cause you problems.

If your files have not changed in content, but when you pull the code down from source control and the time-stamp of the files are set to the to the current time of the build machine when the build begins then you could look at applying a SHA hash code to your deployed files and your build files.

Since the SHA hash code does not look at time stamps it will allow you to copy only the files that have file content changes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文