gpt4 book ai didi

git - 为不同的构建 react native 项目自定义包名称

转载 作者:太空狗 更新时间:2023-10-29 14:21:34 24 4
gpt4 key购买 nike

我正在尝试使用不同的包名称来管理我的 React Native 应用程序项目(CRNA pop ),以便我可以发布/测试不同的风格:

com.mydomain.internal
com.mydomain.alpha
com.mydomain.beta

理想情况下,我想在我的 git master 分支上开发和测试 com.mydomain.internal 应用程序包,并将更改推送到 alpha 分支(这个分支应该构建com.mydomain.alpha 包),然后将更改推送到 beta 分支,它应该在其中构建 com.mydomain.beta 应用程序包。

我想避免手动更改每个版本的包名称,因为它涉及很多文件并且很容易破坏东西。我想知道是否有一种好方法可以帮助我维护/更新上述多个应用程序风格/版本。如果图标也可以更改,请指出,以便我可以为不同的口味创建不同的图标。

(我正在考虑配置 list 并从静态文件中读取包名称,但似乎不起作用)

谢谢!

最佳答案

考虑一个脚本可以确定 checkout 分支的名称:

branch=$(git rev-parse --symbolic --abbrev-ref HEAD)

这意味着您可以(在这里使用“config”作为通用术语,将其替换为要修改的正确文件):

  • 版本只有一个模板文件config.tpl
  • 以分支命名的版本值文件:config.dev , config.master : 因为它们是不同的,所以在 merge 或切换分支时不存在 merge 问题。

最后,您将注册(在 .gitattributes declaration 中)一个 content filter driver .

smudge(图片来自“Customizing Git - Git Attributes”,来自“Pro Git book”)

smudge与模板文件 ( config.tpl ) 关联的脚本将生成(在 git checkout 上自动生成)实际的 config通过查看右侧的值来文件 config.<branch>值文件。
生成的实际config文件仍然被忽略(通过 .gitignore )。

请参阅“git smudge/clean filter between branches”中的完整示例。

关于git - 为不同的构建 react native 项目自定义包名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56658526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com