2

我有一个需要部署到多个客户端的 iOS 应用程序。每个客户端在应用程序中都有一些小的更改(图像、配置文件、应用程序名称等)。95% 的应用程序对所有客户都是相同的。

我不想维护多个 git 存储库(每个客户端一个)。我宁愿有一次,每个客户都有分支机构。

我是这个分支的新手,需要知道这是否可以实现。

  1. 我计划用通用图像/配置/等创建主分支。
  2. 为每个客户创建一个分支
  3. 使用客户图像/配置/等更新每个分支

然后,当我做出改变时,我将把它交给主人。然后将更改从 master 拉到每个分支。当我从 master 拉取时,如何阻止图像、配置等被覆盖。当我为每个分支执行此操作时,我可以定义某些可以忽略的文件吗?

有没有更好的方法来管理我需要做的事情?

4

1 回答 1

2

您应该在其上拉动master然后重新调整您的分支。

有关具体示例,请参阅“ Git:如何一次重新设置多个分支(具有相同的基本提交)? ”。

为了额外的安全性,您可以添加与您的文件关联的合并驱动程序“ ”,并在每个分支中存在keepMine的文件中声明该合并驱动程序。 请参阅“如何告诉 git 始终为特定文件的冲突合并选择我的本地版本? ”。.gitattributes

这将更改您的客户端分支的 SHA1,并且您将不得不强制将它们推送到客户端存储库,但是由于所述客户端没有主动修改他们身边的文件,所以这不是问题。

于 2012-11-14T06:21:21.983 回答