すでにGithubにあるマルチモジュールアプリがあります。これは2つのモジュールで構成されており、1つはAndroidアプリともう1つはRailsベースのWebアプリです。したがって、私のプロジェクトのディレクトリ構造は次の形式になります。 :
ProjectRoot
|
+-- web
|
+-- Android
|
+-- .git
そのため、単純にcd
をProjectRootに入れて、アプリをHerokuにプッシュすることはできません。Rails app is ProjectRoot/web
です。 Herokuへのweb
フォルダー?Webをgitサブモジュールに変換すると、簡単に実現できますが、Gitには5つのプライベートリポジトリしかなく、アプリ全体で1つのリポジトリのみを使用することを好みます。
git subtree Push
を使用できます。それはあなたのディレクトリをルートとして新しいコミットツリーを生成し、それをプッシュします。
git subtree Push --prefix web heroku master
完全なドキュメントは here です。
git subtree
コマンド(組み込み)は、これを行うための良い方法です。ブランチのサブツリーをプッシュしてマスターにしたい場合は、次のようなものを使用できます。
git Push --force heroku `git subtree split --prefix web HEAD`:master
サブフォルダーの代わりにgitブランチを使用することもできます。 git 1.7.2以降を使用している場合は、git checkout --Orphan Android
を実行するだけで、マスターブランチから切り離されたブランチを作成できます(ここではWebフォルダーと想定)。 Orphanブランチをチェックアウトしたら、git rm -rf .
を実行して既存のファイルを削除してから、Android固有のファイルを空のルートディレクトリにコピーします。
モジュールごとに個別のフォルダーを使用する場合は、リポジトリーを2回複製して、次の構造を使用できます。
ProjectRoot
├── Android
│ └── .git
└── web
└── .git