我的应用程序使用 Mochiweb。据我了解,rebar
当我运行时从 Github 获取最新版本make
,因为有一行rebar.config
:
{deps, [
{mochiweb, ".*",
{git, "git://github.com/mochi/mochiweb.git", "master"}}
我的应用程序有一个 VCS,它是 git。所以,基本上我在另一个里面有一个 git 存储库:
myapp
.git
deps
mochiweb
.git
src
etc
我知道在另一个存储库中添加一个 git 存储库不是一个好主意(git add .
)。应该使用 Git 子模块功能。
因此,我将该deps/mochiweb
目录作为子模块添加到主 git 存储库中。
问题是,当另一个开发人员克隆他必须首先克隆的主存储库init
和update
子模块时deps/mochiweb
(否则它将是空的)。
如果开发人员make
在克隆主存储库后立即运行,则 Makefile 会显示以下内容:
ERROR: Dependency dir deps/mochiweb failed application validation with reason:
{missing_app_file,"deps/mochiweb"}
make: *** [all] Error 1
我的问题是:将另一个应用程序添加到 Erlang 应用程序的部门以允许其他开发人员在不使用 git 子模块的情况下轻松更新的正确方法是什么?