2011-06-19 7 views
1

私はアンドロイドアプリケーションをさまざまな国のビジネス顧客にターゲティングしています。Androidアプリケーション用gitのブランチのみ1または2ファイル

これらの顧客のためにアプリケーションを少しカスタマイズする必要があります。現時点では、これらのカスタムフィールドを含むcustomization.xmlファイル(res/valuesの文字列リソース)を作成しました。

現在、私はこれらの顧客を依存する方法を見つけました(また、xmlファイルに入れる必要があることにも注意してください)。

gitsでcustomizations.xmlファイルとandroidmanifest.xmlファイルのみを分岐することはできますか?これらのファイルはかなり小さいので、私は簡単に別のブランチでそれらを維持することができます。しかし、プロジェクトの他の変更は、簡単に別の支店にプッシュする必要があります。それをどうやってやるの? デフォルト:マスターブランチ customer1:異なるAndroidManifest.xmlをし、customizations.xml customer2とcustomer1ブランチ:....あなたの洞察力のための

おかげ

は、我々が持っていると言います。 (私はこれを解決するためにgitが好きですが、もしあなたが別の方法を知っているなら、詳しく教えてください)。

答えて

1

フルプロジェクトのみ分岐することができます。ただし、ブランチ内の2つのファイルだけを変更することはできません。これらのブランチをマージして変更を伝播することができます。

2

Gitはスナップショットに基づいており、コミットごとにツリー構造全体を格納します。ただし、ハッシュ値に基づいてコンテンツを格納します。つまり、変更によってリポジトリに最小限のサイズが追加されます。

1

ここで取り組もうとしている問題は2つあります。1)異なる国のリリースを行うための最適なバージョン管理戦略。 2)顧客に依存するカスタマイズ。アプリからユーザーが行った。

1)ブランチを作成し、必要な変更を加えてリリースを行うことをお勧めします。そうすれば、バグ修正が必要な場合に備えて、リリースの内容を明確に把握することができます。また、これで必要となるカスタマイズとバージョン管理のニーズにも適切に対処します。

2)のためのカスタムUIの読み込みは、一連のオプションから選択するアプリの最初の起動時にユーザーに確認することで実行できます。これをアプリの設定で保存できます。何らかの設定メニューでこれを変更するオプションを用意してください。