我有一个具有复杂依赖关系的项目,我想让其他开发人员更容易获取它们。我有Capfile、Gemfile、Guardfile、Procfile和Rakefile,所以我想...为什么不使用Brewfile来管理克隆项目的mac开发人员的系统级包依赖关系呢?
我的希望是创建一个本地公式,它只是一个依赖项列表,类似于:
# Brewfile
require 'formula'
class DeveloperProject < Formula
depends_on 'mongodb'
depends_on 'postgresql'
depends_on 'solr'
depends_on 'phantomjs'
end第一次签出存储库的开发人员可以只使用brew install developer_project,并且当依赖项发生变化时,他们可以使用brew update developer_project。
问题是,我的brew-fu不够好,不知道如何让brew识别这个公式,而不是在某个地方为它创建一个完整的存储库。
起初,我想我可以尝试以某种方式传入文件路径:
brew install /Users/me/Projects/DeveloperProject/Brewfile然后我想,我也许可以模拟一个tap,而不需要托管一个实际的repo,以便进行适当的替代公式源管理:
mkdir -c /usr/local/Library/Taps/local-tap/Formula/
ln -s \
/Users/me/Projects/DeveloperProject/Brewfile \
/usr/local/Library/Taps/local-tap/Formula/developer_project.rb
brew install developer_project然后我想我可以将它符号链接到我的公式中,尽管它会导致脆弱的brew update:
ln -s \
/Users/me/Projects/DeveloperProject/Brewfile \
/usr/local/Library/Formula/developer_project.rb
brew install developer_project我找不到一种方法来使这些方法中的任何一种工作,而且每一种方法都越来越令人生厌。有没有一种方法可以用brew做到这一点,而不会像存储库一样嘎嘎作响?否则,有没有一种方法可以像远程公式源一样成功地叫起来呢?我是否错过了为项目创建brew清单的现有方法?
发布于 2013-04-01 02:18:52
看起来我不是第一个使用this idea的人了!Brewdler不支持特定的点击或任何东西,但它可以为我工作。
发布于 2013-04-25 16:01:47
您可以使用URL安装任意公式,但不能使用文件名。因此,如果您将brew install /Users/me/...命令中的路径转换为file:// URL,您可能无需维护存储库或点击或类似的任何东西,就可以让它工作。
请注意,要让它自动更新内容,您需要显式地将版本号放入公式中,并在每次更改依赖项时对其进行调整。
https://stackoverflow.com/questions/15732257
复制相似问题