Py学习  »  Git

如何在yarn中部署私有gitlab依赖项的包

Tom • 5 年前 • 1888 次点击  

我正在处理一个需要使用另一个专用Vue项目作为依赖项的Vue项目。另一个私有项目是vue插件。

我发现了如何让yarn通过在package.json中添加以下行来获取私有gitlab存储库中的包:

"dependencies": {
    "myPackage": "git+https://{token-name}:{token}@gitlab.com/path/to/repo.git#someTag"
}

这很好,我的回购协议的内容在我的 node_modules . 然而,我的问题来了:

在这个repo中,实际的vue插件不在根目录下,它在repo的子文件夹下,这意味着 index.js 回购协议的根不是来自我的插件(我想这是一个纱将使用)。

我有一个自定义的yarn部署脚本,它将我的插件编译到一个js文件中,并将其放在 dist 文件夹,但是dist文件夹没有版本控制。我可以使用gitlab ci来生成它,但我仍然很确定yarn不会使用 迪特 文件夹。

我的(广泛的)问题是:我如何使用自己配置的工具(yarn、gitlab ci)才能将我的私有gitlab存储库用作另一个项目的vue插件?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/44343
 
1888 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Ohgodwhy
Reply   •   1 楼
Ohgodwhy    6 年前

您可以通过使用 package.json . 例如, main declaration

{ 
    main: 'dist/index.js'
}

这告诉node如何从包中解析模块。

所以 require('my-vue-plugin') import MyVuePlugin from 'my-vue-plugin' 会决心 node_modules/my-vue-plugin/dist/index.js ,例如。

就版本控制而言,您不需要对文件或文件夹进行版本控制。你通过 version 你的财产 包装袋 在你的例子中,通过git使用 git tag -a v(major).(minor).(patch).

标记的版本应与在中指定的版本匹配 包装袋 .

我建议 reading more about semantic versioning creating a script (like VueJS) 自动增加包、版本和发布。