GitCompound 可以用 Git 库和 Ruby 任务建立你的项目。它结合了 Git 子模块的功能和类似 Bundler 或者 Composer 的公共依赖管理器。
核心特点:
GitCompound 引入了特定领域的语言来设计 maNifest
Manifest 文件用于指定的项目
Manifest 可以用不版本策略来描述组件依赖 (RubyGems 类似的版本, 标签,分支或者确定的 SHA).
Manifests 可以用分级的方式进行处理.
示例代码:
name :base_component
maintainer 'Your Name '
component :vendor_1 do
version '~>1.1'
source 'git@Github.com:/user/reposiTory'
destination 'src/component_1'
end
component :second_component do
version '>=2.0'
source 'git@github.com:/user/repository_2'
destination 'src/component_2'
end
component :my_component do
branch 'feature/new-feature'
source '/my/component_3/repository'
destination 'src/component_3'
end
task 'print deTails', :each do |_path, component|
puts "Component `#{component.name}` installed in #{component.path}"
end