我如何注册在凉亭本地的git包?
我现在component.json如下:
{
"name": "myproject",
"version": "1.0.0",
"dependencies": {
"jquery": "1.8.0",
"twitter/bootstrap": "2.1.1"
}
}
不过,我也想补充我在创建一个软件包C:/mypackage
是一个Git仓库有标记的版本。 当我bower install --save C:/mypackage
得当将其添加到项目,但它并没有将它添加到我的component.json。
我想bower register mypackage C:/mypackage
,但它一直给我
bower error Incorrect format
我究竟做错了什么?
选项1:公共鲍尔注册
鲍尔是建立主要是在“非自以为是”的方式共享公共(客户端)代码。 主要用途的情况下,那么,是有可公开访问的存储库(在GitHub上)是register
的名称和git仓库URL d。 我只是做了这个自己:
bower register linksoup git://github.com/automatonic/linksoup
这只是告诉凉亭服务器,当你install linksoup
去抢在代码git://github.com/automatonic/linksoup
库,并把它在本地项目的component
目录。
如果这是你想要做什么,只需要设置在GitHub上的/ etc库,把你的代码在那里,然后register
与所得的资料库信息。
选项2:私人依赖
有很多理由不以公开访问的存储库中发布您的代码。 它可能不是开源的,等等。如果你的mypackage
代码并不意味着是公共的,那么你或许应该不register
荷兰国际集团它的公共凉亭服务器上......而且,即使你可以register
一个本地目录,这将只有你的机器......这违背了通过凉亭共享代码的目的上工作。
如果你只是想有凉亭管理本地,私有依赖,那么我会即兴关闭的傻瓜的解决方案:
{
"name": "myproject",
"version": "1.0.0",
"dependencies": {
"jquery": "1.8.0",
"twitter/bootstrap": "2.1.1",
"mypackage": "file:///path/to/mypackage/.git"
}
}
这只是说myproject
需要mypackage
,并使用git克隆进行检索。 我的猜测是,这个可以用什么混帐能理解(包括本地库)。 但是你要注意,这可能会遇到问题的其他人对这个代码是不能访问你的本地路径工作。
最佳的揣测
在我看来,如果你可能会认为bower register
是本地操作(告诉鲍尔如何找到通过某种本地注册表的相关性)。 据我所知,这只是一个遥远而公开登记,这就是为什么这是不支持的。
您也可以寻找一种方式,像做一个与NPM链接操作 。 也就是说,依赖模块上工作,而总是有你的开发周期包括发布。
一个小细节你试图多少人参与,哪些完成将有利于更有针对性的回答。
您可以添加任何的Git仓库如下:
{
"name": "myproject",
"version": "1.0.0",
"dependencies": {
"jquery": "1.8.0",
"twitter/bootstrap": "2.1.1",
"myrepo":"git://myrepo.com/myrepo"
}
}
您可以使用bower link
:
链接功能可以让开发人员轻松地测试他们的包。 联是一个两步过程。
使用bower link
在项目文件夹将创建一个全球性的环节。 然后,在其他一些包, bower link <pkg>
将创建指向先前创建的链接组件文件夹的链接。
这允许容易地测试一个包,因为更改将被立即反映出来。 请注意,鲍尔不会抓取链接的软件包的依赖。
安装/升级时,鲍尔将覆盖链接。
与大想法bower
是轻松共享项目的依赖关系。 因此, 使用本地回购应仅限于测试 。
一旦你明白,你应该知道它是不是-strictly-需要register
才能使用它作为一个依赖你的包。
这是由于这样的事实,凉亭depencency可以指定一个版本 , 文件夹或包 。 所以, 你可以使用本地存储库 。
定义为亭子包
首先,你需要确定你的依赖作为一个凉亭包 :
# create the bower package
cd /path/to/you-need-me
bower init
# answer questions…
添加为项目依赖
然后在你的主项目,需要在一个you-need-me
的依赖,编辑bower.json
文件中添加(或扩大):
"dependencies": {
…
"you-need-me": "file:///path/to/you-need-me/.git/"
"you-need-me-windows": "C:/path/to/you-need-me-windows/.git/"
}
所以,你不给一个版本,但一个地方git
端点, 即子目录.git/
。
安装依赖
在男子项目中安装的凉亭与依赖关系:
cd /path/to/main-project/
bower install
失败
bower you-need-me#* ENOTFOUND Package /path/to/you-need-me/ not found
再次检查你的路径和你指向.git/
你的依赖的目录。
成功
你应该得到的东西,如:
bower you-need-me#* not-cached file:///path/to/you-need-me/.git/#*
bower you-need-me#* resolve file:///path/to/you-need-me/.git/#*
bower you-need-me#* checkout master
bower you-need-me#* resolved file:///path/to/you-need-me/.git/#b18c753c6f
bower you-need-me#* install you-need-me#b18c753c6f
写下一个博客条目: 注册包之前,本地测试bower.json 。