用 git 管理私有包

在实际的开发中,有时候 npm 上的包可能不满足使用要求,需要在其基础上进行修改,然后发布自己的包。在程序体量不大的情况下,可以采用 Git 来进行包管理。

下文以 Quasar 组件为例。

下载包

使用 npm 或 yarn 将包更新到自己需要的版本。以后基于该版本进行修改

1
yarn add quasar@1.18.9

新建 Git

  • 复制包的内容到新目录,然后运行 git init 初始化包

  • 按需修改组件,新增一个 tag

1
2
3
4
5
6
7
8
git remote add origin xxx(仓库地址)

# ...省略分支推送

# 新建tag
git tag v1.18.9.1
# 推送tag
git push origin v1.18.9.1

更新标签

标签无法更新,只有先删除再重新创建。

删除代码如下:

1
2
3
4
5
# 删除本地tag
git tag -d [tag]

# 删除远程tag
git push origin :refs/tags/[tagName]

使用

yarn 格式:

1
yarn add <git remote url>#<branch/commit/tag>

npm 格式:

1
npm install -s <git remote url>#<branch/commit/tag>

参考

yarn Adding dependencies