0

我们已经成功创建了一个 bower 包,它与 Subversion 和 private-bower 一起工作得很好。

我现在面临的问题是,我们还需要将生成的文件提交到(Subversion 或 Git)中才能正常工作

bower install 或者 bower update

现在,每次构建都会在存储库的本地副本中产生冲突。

我的问题是,我可以告诉 bower 执行安装后或更新后命令来执行构建吗?在我的情况下,它应该运行一个 grunt 任务来在本地构建文件。

只是想知道 bower 是否无法执行这些步骤来避免 git/svn 存储库上的冲突?或者建议的避免合并冲突的方法是什么?

4

1 回答 1

0

bower https://github.com/bower/bower/blob/master/HOOKS.md中有安装后挂钩,但您不能依赖它作为包提供程序(它们旨在供安装的开发人员使用你的包裹)

对于您的情况,提供需要构建步骤的 bower 包的团队有两个主要工作流程:

  • 绑定到 bower 注册表的 repo 是源 repo。源代码和构建文件在其中(如引导程序)。因此,当bower install您检索包含所有源代码、构建例程等的整个 repo 时……这可能非常大。这就是你目前的情况。
  • 与 bower 注册表相关联的 repo 和包含源的 repo 是两个不同的 repos(如 angular):
    • 您的build目录实际上是绑定到 bower 的 repo
    • 每次发布新版本时,您都会从该存储库构建并提交。

如果您遇到版本控制问题,也许您应该切换到第二个工作流程(这也可以让您清理所有不必要的文件,如构建例程)。

于 2015-09-17T21:23:22.340 回答