LoginSignup
7
7

More than 5 years have passed since last update.

Elixir/Phoenix用のパッケージをローカルで開発/改修する場合はdepsで"path:"指定をすると便利です

Posted at

例えばPhoenixのプロジェクトから使用することが前提のパッケージを開発/改修する場合、そのパッケージは専用のgithubリポジトリで管理することになると思います。

ここで、パッケージのアプリケーション名が"hoge"、githubリポジトリ名が"my/hoge"だとします。

開発中は当然Phoenixのプロジェクトからそのアプリケーションを参照して動作を確認しつつ作業を進めたいでしょうから、depsには下記のように書くことになると思います。

defp deps do
  [{:phoenix, "~> 1.1.4"},
  〜省略〜
  {:hoge, github: "my/hoge"},
  〜省略〜
end

しかし、depsの参照先がgithubのリポジトリになっていると、動作確認を行うためには、hogeに加えた変更を反映するために、毎回githubにpush -> deps.unlock -> deps.getという作業を繰り返さなければなりません。これは非常に面倒です。

こういったケースに対応するために、depsにはローカルディレクトリのパスを指定することが可能なpathオプションが用意されています。

defp deps do
  [{:phoenix, "~> 1.1.4"},
  〜省略
  {:hoge, path: "/path/to/hoge"},
  〜省略〜
end

上記の/path/to/hogeに、githubのmy/hogeリポジトリをpullしてそちらで改修を行えば、hogeをいちいちgithubにプッシュすることなく変更の確認が可能です。(Phoenixを再起動すれば、変更を検知して自動的にコンパイルを行ってくれます)

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7