2017-07-20 9 views
3

一般的な質問は、1つのintellijプロジェクトで複数の異なるgit reposを同時に使用する方法です。 git reposはメインアプリケーションの内側にある必要があります(これもgit repoです)。私はそれらのintellij:2つのフォルダに展開する方法は?

をコミットすることはできませんので、私は、私は

1は、メインのアプリのためにある2つのGitのリポジトリを持つシンボリックリンクを使用することはできません、他の一つは、私はいくつかのプロジェクトで使用していますライブラリです。

ここはこうです:私はメインアプリを持っています。作曲家を経由して、ライブラリ/パッケージをアプリケーションに追加します。

問題は:

フォルダ構造は:

IdeaProjects/myappA

ノートを開発しますがありますだけでなくIdeaProjects myappBなど

IdeaProjects/mylib

はmyappAに

IdeaProjects/myappA/vendor/mylib

サーバ展開フォルダがあります:

/var/www/www.myappA.com/

は、私は、ライブラリへの変更のたくさんを行い、私が上で動作するとき、私は別のモジュールとしてそれを開いていますmyappAだから、実際に元のソースコードmylibが入っているそのフォルダ/モジュールのmylibにコードを変更します。今私は小さな変更を行うたびに作曲家にインストールまたは更新したくない。だから私はintellij経由でライブラリmylibのファイルを私の主なアプリケーションのコンポーザーのインストールフォルダに直接保存するときに展開します。 〜IdeaProjects/myappA/vendor/mylib。問題は、と同様にをサーバー展開フォルダに展開する必要があることです。しかし、intellijを使って2つのフォルダにファイルを展開する方法はないようです。

他に何ができますか?

私は手動で短いキーを使用してant buildを起動し、次にIdeaProjects/myappA/vendor/mylibをサーバーデプロイメントディレクトリにコピーします。

答えて

4

あなたのセットアップに応じて複数のソリューションがあります:IntelliJの内部

ソリューション:File > Project Settings > Modulesに行く ちょうどあなたのMyAppプロジェクト内のモジュールとしてMYLIBをインポートするには、+をクリックして、import module import module

Gitのネイティブを選択ソリューション:使用submodules

サブモジュールを使用すると、Gitリポジトリをサブディレクトリ別のGitリポジトリのこれにより、別のリポジトリをプロジェクトにクローンし、コミットを別々に保つことができます。

サブモジュールで作業する場合、いくつかの癖があることに注意してください、完全を期すために最新

参照サブモジュールを保つために、特に方法:あなたはGradleのを使用してやMavenの代わりアリいた場合、あなたは可能性がありそれぞれのプロジェクトビューを使用して、+を使用して複数のbuild.gradleまたはpom.xmlファイルを追加します。これらのファイルはモジュールとして自動的にintellijにインポートされます。

+0

行うことができ、すべてのリポジトリ(VCS -> Git -> Pull)からプルするのでなgit pullなどいくつかの操作をスピードアップすることができます。例:モジュールが完成しました。モジュールはlibです。 libはメインプロジェクトとdeployフォルダの内側になければなりません。もう一度:モジュール内の何かを2つのフォルダに変更すると、どのように配備されますか? – Toskan

+0

私はここであなたの設定を正しく理解していません。 もう少し明確にすることはできますか? –

+0

私は 'IdeaProjects/myappA'フォルダにすべてのソースコードがあります。私は展開フォルダ '/ var/www/myappA'を、私のローカルのdevサーバ上で動作するすべてのデプロイされたコードを持っています。そこに座っています。 'IdeaProjects/myappA/vendor'と'/var/www/myappA/vendor'にコピーする必要がある変更を 'mylib'で変更するたびに' IdeaProjects/mylib'でコード化したライブラリがあります。 – Toskan

0

モジュールアプローチがあなたのケースに合っていると思います。モジュールごとに異なるgit repoを持つことができます。あなたのプロジェクトのルートを右クリックしてnew->moduleまたはfile->new module from existing source

Settings | Version Controlをチェックすると、Intellijもプロジェクト内のすべてのgitリポジトリを自動的に検出する必要があります。

また、代わりにあなたはIntelliJのモジュールが開いて新たな問題がそうであるように、それをインポートする(Macのcmd-tVCS -> Update Projectまたはctrl-t

+0

これは、2つの別々のフォルダに展開する必要がないという問題に対処していません – Toskan

関連する問題