You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

未发布到pub.dev的Flutter插件如何启用版本控制?

本地插件的版本控制解决方案

不用发布到pub.dev也能给你的插件做版本控制,核心是把插件改成Git仓库,然后通过Git引用替代本地路径引用,这样每个项目可以独立选择插件版本,不用同步更新。具体操作如下:

1. 先给插件初始化Git仓库

在你的my_plugin目录下执行以下命令:

git init
git add .
git commit -m "初始化插件版本"
git tag v1.0.0  # 打第一个稳定版本标签

之后每次做变更,不管是兼容更新还是破坏性变更,都提交代码后打新标签,比如破坏性变更后打v2.0.0,兼容更新打v1.1.0。

2. 项目中按版本引用插件

把原来的本地路径引用改成Git引用,支持两种方式:

方式一:引用特定版本标签(推荐用于稳定版本)

修改项目的pubspec.yaml:

dependencies:
  my_plugin:
    git:
      url: /Users/myself/Documents/my_plugin  # 你的本地Git仓库路径
      ref: v1.0.0  # 指定要使用的版本标签

需要升级插件的项目,只需要把ref改成新标签(比如v2.0.0),执行flutter pub get就能拉取新版本;不需要升级的项目保持旧标签即可,不受破坏性变更影响。

方式二:引用特定分支(适合开发阶段)

如果需要在开发中测试不同版本,可以指定分支:

dependencies:
  my_plugin:
    git:
      url: /Users/myself/Documents/my_plugin
      ref: dev  # 比如专门的开发分支

你可以维护多个分支,比如main分支放稳定版本,dev分支放正在开发的功能,项目按需选择分支即可。

补充说明

如果需要在多台机器上共享这个插件,也不用上传到pub.dev,搭个本地局域网的Git服务(比如Gitea、自建GitLab),把插件仓库推上去,然后项目里的url改成局域网Git服务的地址就行,原理和本地Git引用一样。

内容的提问来源于stack exchange,提问作者gd08xxx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 10:40:43