我们正在使用TFS从Git存储库部署PDF文件。
部署与特定分支相关联。
经常会决定分支包含足够好的文件来部署。
我们只想部署自上次部署以来已更改的文件,而不是整个分支。它是巨大的,需要很长时间来部署整个事物。
如何在部署发生时以某种方式标记分支,然后在需要下一次部署时,将当前分支与标记进行比较,然后仅部署更改/差异/增量?
只是要强调,这个分支只包含PDF文件,而不是代码。它不需要编译。
要澄清:
在构建服务器上,我们希望避免每次部署过程运行时都必须克隆整个存储库。通常,部署的第一步是克隆存储库,但这需要太长时间。有没有办法只下拉已添加或修改的文件?稀疏结账可能吗?
答案 0 :(得分:2)
所有答案都在你的问题中:
git tag X.Y.Z ${COMMIT_TO_TAG}
git diff --name-status ${PREVIOUS_TAG}..${TAG_TO_DEPLOY}
要查找上一个标记:
git describe --first-parent --tags --abbrev=0 ${COMMIT_TO_TAG}
git describe --first-parent --tags --abbrev=0 ${TAG_TO_DEPLOY}~1