Bower如何使用本地和远程存储库
当将工件部署到本地的、由bower声明的存储库时,Artifactory将从bower中提取。Json文件工件的名称和版本信息,并将它们作为属性添加到你的包中(属性名为bower.name和bower.version):
之后,当您尝试使用Bower install命令从Artifactory解析这个包时,Artifactory将使用属性搜索来搜索这些参数。在找到具有匹配参数的包之后,Artifactory将该包发送给客户端。如果缺少其中一个参数,Artifactory将无法检索包。
在使用远程存储库时,解决方案的行为有所不同。在解析包时,默认情况下,Bower将转到Bower注册表,以发现正在查找的包被注册在哪里。Bower注册中心将其结果返回给Bower客户端,其中包含引用可以解析包的位置的信息。然后,Bower将尝试使用它收到的结果来解析工件。在使用Bower -art-resolver时,当Bower首先尝试到达Bower注册表时,它将访问Artifactory,然后Artifactory将访问Bower注册表以接收与下载包相关的参考信息。Artifactory将在gitrefs文件中搜索这些信息,该文件可以在每个包路径中找到,如下所示:
然后Artifactory下载所需的包并将其返回给客户机。gitrefs文件包含此包可用的所有版本(即,文件中由此特定包可用的标记构造的信息)。默认情况下,该类型的文件将每7200秒过期一次。您可以通过导航到远程存储库的配置>高级>元数据检索缓存周期,将此时间段调整为更短。只要这个文件没有过期,Artifactory就会提供它已经缓存的工件。如果文件已经过期,那么Artifactory将尝试从Internet解析该文件。
发布日期:2017年5月21日
最后更新:2021年1月24日
关键词:Bower远程存储库,Bower本地存储库,gitrefs
