Crates.io | dep |
lib.rs | dep |
version | 0.2.0 |
source | src |
created_at | 2019-02-12 13:06:47.131123 |
updated_at | 2019-04-23 14:25:24.674634 |
description | A very basic, git based, flat dependency manager |
homepage | https://github.com/hardliner66/dep |
repository | https://github.com/hardliner66/dep |
max_upload_size | |
id | 114283 |
size | 27,522 |
A very basic, git based, flat dependency manager
Currently only public repos or repos with ssh are supported. So, no user-pass authentication.
dep global // prints the global config path
dep init // creates an empty project config
dep update // updates all dependencies
The configuration format is heavily inspired by the cargo package format, with some minor changes.
[project]
# required
name = 'dep'
# optional
# if lib-dir isn't set, default-lib-dir (defined in $HOME/.deprc) is used
lib-dir = 'VENDOR'
authors = ['hardliner66']
descrption = 'My cool project'
homepage = 'https://github.com/hardliner66/dep'
repository = 'https://github.com/hardliner66/dep'
git-server = 'git.myserver.com'
[dependencies]
# public git repo
some_repo = { git = 'https://my.gitserver.com/user/some_repo' }
# custom lib-dir for this dependecy
some_repo2 = { git = 'https://my.gitserver.com/user/some_repo2', into = 'custom_lib_dir' }
# rename output dir (inside lib-dir) for this dependency
some_repo3 = { git = 'https://my.gitserver.com/user/some_repo3', as = 'mylib' }
# private git repo
some_private_repo = { git = 'git@my.gitserver.com:user/some_private_repo' }
# alternative syntax for private repos (only if git-server is set)
some_private_repo2 = { repo = 'user/some_private_repo2' }
# branches
some_other_private_repo = { git = 'git@my.gitserver.com:user/some_other_private_repo', branch = 'feature3' }
# local folders
some_local_repo = { path = '../some/local/folder' }