2011-06-19 29 views
1

我有一个针对不同国家的商业客户的Android应用程序。在git中为Android项目分支1或2个文件

我需要为这些客户稍微定制应用程序。目前,我创建了一个customization.xml文件(res/values下的字符串资源),它将包含这些自定义字段。

目前我还没有找到一种方法来使这些客户从属(也请注意,他们需要在XML文件)。

我可以在git中只分支customizations.xml和androidmanifest.xml文件吗?这些文件非常小,所以我可以轻松地将它们保存在不同的分支中。然而,项目的其他变化应该很容易推到不同的分支。我会怎么做呢?

说我们有一个: 默认:主分支 customer1表:用不同的AndroidManifest.xml和customizations.xml 的customer2 customer1表分支:....

感谢您的见解。 (我更喜欢git来解决这个问题,但如果你知道另一种方法,请详细说明)。

回答

1

您只能分支完整的项目。但是,没有人会阻止您更改分支中的这两个文件。那么您可以简单地合并这些分支来传播更改。

2

Git是基于快照的,并且会为每次提交存储整个树结构。但是,它基于其散列值存储内容。这意味着您的更改会将最小大小添加到存储库。

1

您试图在此处解决两个问题:1)为不同国家/地区发布版本的最佳版本控制策略。 2)由用户从应用程序完成的依赖于客户的定制。

对于1)建议您创建一个分支,进行必要的更改并从中进行发布。这样,如果需要修复错误,您将能够清楚地了解发布版本中的内容。它还将充分解决您对此的定制和版本控制需求。

2)为用户加载自定义用户界面可以通过提示用户首次启动应用程序以从一组选项中进行选择来完成。然后,您可以将其保存在应用偏好设置中确保提供一个选项来在某种设置菜单中更改此选项。