我的应用程序使用 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 子模块的情况下轻松更新的正确方法是什么?