我正在使用 Git 作为我们的代码存储库。
我们得到的每个 repo 都包含master,development和fix分支。
我们将master其用于生产中的代码,而开发是我们对开发更改的报告。
我的prd和dev网站有不同的路径。
您如何配置它以使每个部署到prd或dev无缝使用不同的分支?
现在,我的packages.json.
我正在使用 Git 作为我们的代码存储库。
我们得到的每个 repo 都包含master,development和fix分支。
我们将master其用于生产中的代码,而开发是我们对开发更改的报告。
我的prd和dev网站有不同的路径。
您如何配置它以使每个部署到prd或dev无缝使用不同的分支?
现在,我的packages.json.
这个想法不是版本package.json(保持私有),而是生成它(其中包含正确的值)。
生成脚本将确定签出分支的名称:
branch=$(git rev-parse --symbolic --abbrev-ref HEAD)
这意味着您可以:
package.json.tpl version.dev, version.master: 由于它们不同,因此在合并或切换分支时不会出现合并问题。最后,您将(在.gitattributes声明中)注册一个内容过滤器驱动程序。
(图片来自“ Customizing Git - Git Attributes ”,来自“ Pro Git book ”)
smudge与模板文件 ( ) 相关联的脚本将通过在正确的值文件中查找值package.json.tpl来生成(自动,在 上git checkout)实际文件。
生成的实际文件仍然被忽略(由)。 package.jsonversion.<branch>package.json.gitignore
请参阅“分支之间的 git smudge/clean filter ”中的完整示例。