Github为多个客户提供分支机构

时间:2012-11-14 06:01:58

标签: github branch pull master

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

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

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

  1. 我打算用通用图像/配置/等创建主分支。
  2. 为每个客户创建一个分支
  3. 使用客户images / configs / etc更新每个分支
  4. 然后当我做出改变时,我将把它交给主人。然后将更改从主服务器提取到每个分支。当我从主人那里拉出来时,如何阻止图像,配置等被覆盖。我可以定义某些文件,当我为每个分支执行此操作时可以忽略这些文件吗?

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

1 个答案:

答案 0 :(得分:2)

你应该拉出master,然后 rebase 你的分支。

有关具体示例,请参阅“Git: How to rebase many branches (with the same base commit) at once?”。

为了提高安全性,您可以添加与文件关联的合并驱动程序“keepMine”,并在每个分支中的.gitattributes文件中声明合并驱动程序。
请参阅“How do I tell git to always select my local version for conflicted merges on a specific file?”。

这将改变客户端分支的SHA1,并且你必须强制将它们推送到客户端仓库,但由于所述客户端没有主动修改文件,所以这不是问题。