如何测试 fastlane 插件的 fork
How to test fork of fastlane plugin
我做了一个fastlane插件的fork,并在本地克隆中做了一些修改。我如何测试更改?
在插件目录中我已经完成了更改
$ bundle install
$ rake install
我有一个使用该插件的项目并尝试更改插件文件
gem "fastlane-plugin-msbuild"
到
gem "fastlane-plugin-msbuild", path: "../../github/fastlane-plugin-msbuild"
在项目目录中我做了一个
$ bundle install
并且从本地文件系统中提取的分叉插件很好。这也反映在 Gemfile.lock
在分叉的插件中,我更新了版本号以便能够跟踪它。
但是当我运行快车道
$ bundle exec fastlane android beta
带"Used plugins"的部分还是旧版本号,执行时可以看出使用的是原来的插件。
我做错了什么?在本地测试 fastlane 插件的常规方法是什么?
我正在使用 macOS Sierra (10.12.6)。
这基本上是正确的。一些注意事项:
rake install
在 $GEM_HOME
下安装修改插件的本地副本。您应该能够以这种方式使用修改后的插件,而无需对项目中的 Pluginfile
进行任何更改。但是每次进行更改时都必须 rake install
。按原样修改 Pluginfile
会忽略 $GEM_HOME
中的任何内容,因此不需要 rake install
。
在您 Pluginfile
的摘录中,您在 gem
之前有一个 $
。我假设这只是转录,并且您没有在 Pluginfile
中使用 $
。如果是,则应将其删除。
假设这一切都是正确的,你应该从本地分支中获取卸载的gem。
是否可以在其他地方声明插件 gem,例如在你的 Gemfile
?
您也可以尝试 运行 bundle update
,这会将您 Gemfile.lock
中的所有 gem 更新为最新版本,具体取决于您 Gemfile
和 Pluginfile
。这也将从本地分支中获取 gem,但它也应该与 bundle install
.
一起使用
对您的问题的简短回答是您做对了。我不确定为什么它不起作用。
在 Jimmy Dee 的帮助下,我终于找到了问题所在:fastlane 在 ~/.fastlane 中安装了自己的一组 gem
这似乎是 fastlane 在使用安装程序时想要放置它的东西的默认位置。我可能安装了多个 fastlane。我认为我使用的那个是在 /usr/local 中,那是 bundle 所在的位置,也是我安装 af rake install 时我的插件所在的位置。
我只是完全删除了 ~/.fastlane 目录并且它起作用了。
我做了一个fastlane插件的fork,并在本地克隆中做了一些修改。我如何测试更改?
在插件目录中我已经完成了更改
$ bundle install
$ rake install
我有一个使用该插件的项目并尝试更改插件文件
gem "fastlane-plugin-msbuild"
到
gem "fastlane-plugin-msbuild", path: "../../github/fastlane-plugin-msbuild"
在项目目录中我做了一个
$ bundle install
并且从本地文件系统中提取的分叉插件很好。这也反映在 Gemfile.lock
在分叉的插件中,我更新了版本号以便能够跟踪它。
但是当我运行快车道
$ bundle exec fastlane android beta
带"Used plugins"的部分还是旧版本号,执行时可以看出使用的是原来的插件。
我做错了什么?在本地测试 fastlane 插件的常规方法是什么?
我正在使用 macOS Sierra (10.12.6)。
这基本上是正确的。一些注意事项:
rake install
在 $GEM_HOME
下安装修改插件的本地副本。您应该能够以这种方式使用修改后的插件,而无需对项目中的 Pluginfile
进行任何更改。但是每次进行更改时都必须 rake install
。按原样修改 Pluginfile
会忽略 $GEM_HOME
中的任何内容,因此不需要 rake install
。
在您 Pluginfile
的摘录中,您在 gem
之前有一个 $
。我假设这只是转录,并且您没有在 Pluginfile
中使用 $
。如果是,则应将其删除。
假设这一切都是正确的,你应该从本地分支中获取卸载的gem。
是否可以在其他地方声明插件 gem,例如在你的 Gemfile
?
您也可以尝试 运行 bundle update
,这会将您 Gemfile.lock
中的所有 gem 更新为最新版本,具体取决于您 Gemfile
和 Pluginfile
。这也将从本地分支中获取 gem,但它也应该与 bundle install
.
对您的问题的简短回答是您做对了。我不确定为什么它不起作用。
在 Jimmy Dee 的帮助下,我终于找到了问题所在:fastlane 在 ~/.fastlane 中安装了自己的一组 gem
这似乎是 fastlane 在使用安装程序时想要放置它的东西的默认位置。我可能安装了多个 fastlane。我认为我使用的那个是在 /usr/local 中,那是 bundle 所在的位置,也是我安装 af rake install 时我的插件所在的位置。
我只是完全删除了 ~/.fastlane 目录并且它起作用了。