‘ergo’ is a project dependencies management program and project builder. Given a project stored in a git repository, ‘ergo’ fetches the project and its dependencies (also git repositories), builds them, and loads, tests, or runs the project.
Any git repository, public or private, can be a project or a dependency: there is no central index to register with. Each project selects the versions of its dependencies (branch, tag, release, or commit), and the versions actually used are recorded in a lock file, so that builds are reproducible.
‘ergo’ provides three user interfaces:
$ ergo build $ ergo test
(ergo:load "gitlab:com-informatimago/com-informatimago")
(ergo-load "gitlab:informatimago/some-autolisp-library")
Note: ‘ergo’ is under development; this manual documents the interfaces as designed. Cf. the specifications document for the current status.