我将Git用于我们的代码存储库。
我们得到的每个回购都由master
,development
和fix
分支组成。
master
我们将其用于生产环境中的代码,而开发则是针对我们的开发更改的报告。
我的prd
和dev
网站的路径不同。
您如何配置它以便使用不同的分支无缝地将每个部署无缝部署到prd
或dev
?
现在,我的packages.json
中有一条路径。
答案 0 :(得分:0)
这个想法是不版本package.json
(将其保留为私有),而是生成(其中具有正确的值)。
生成脚本将使用以下命令确定已检出分支的名称:
branch=$(git rev-parse --symbolic --abbrev-ref HEAD)
这意味着您可以:
package.json.tpl
version.dev
,version.master
:由于它们是不同的,因此合并或切换分支时没有合并问题。最后,您将(在.gitattributes
declaration中注册 content filter driver 。
(来自“ Customizing Git - Git Attributes”的图像,来自“ Pro Git book”的图像)
与模板文件(smudge
关联的package.json.tpl
脚本将通过在右侧查看值来(自动在git checkout
上生成实际的package.json
文件version.<branch>
值文件。
生成的实际package.json
文件仍然被.gitignore
忽略。
在“ git smudge/clean filter between branches”中查看完整的示例。