代码之家  ›  专栏  ›  技术社区  ›  Ganesh Shankar

如何将rails插件和测试应用程序一起进行版本控制

  •  3
  • Ganesh Shankar  · 技术社区  · 16 年前

    我正在创建我的第一个rails插件,我发现管理插件的版本控制和测试应用程序相当烦人。

    为了实际测试我的插件,我需要在一个测试应用程序中运行它(它基本上只是一个安装插件的scaffold应用程序)

    当我对插件进行更改时,在测试应用程序中更改插件对我来说很方便,这样我就可以立即看到所做的更改。然而,当我想提交并将我的更改推回到github时,我最终会将测试应用程序中的所有文件复制回我的“裸插件”文件夹并进行提交。

    有没有更好的方法来管理它而不必来回复制文件?我有兴趣从其他插件开发人员,如果可能的话,你如何管理这种情况。

    我设想的一个可能的解决方案是在vendor/plugins/myplugin目录中拥有另一个git存储库(它将拥有github的远程repo)。我不确定这是否是最好的,虽然(到目前为止,我还没有很成功地使它的工作…)

    4 回复  |  直到 16 年前
        1
  •  3
  •   nathanvda    16 年前

    我建议使用 git submodules detailed description .

        2
  •  1
  •   Harish Shetty    16 年前

    vendor/plugin 如果你在Windows上,你可以使用 junction 例如:

    c:\test_app
         vendor
           plugin
             foo_plugin -> points to c:\foo_plugin
    
    c:\foo_plugin
      lib
    
        3
  •  1
  •   brycemcd    16 年前

        4
  •  1
  •   Keith Schacht    16 年前

    如果您愿意将最终的插件打包为gem,那么有一个更简单的方法。在基本scaffold应用程序中,可以在Gemfile内指向本地路径:

    我刚刚写了一个教程,说明我是如何创建我的第一个Rails引擎的,我把这个基础作为其他引擎构建者的一个好的起点。

    http://keithschacht.com/creating-a-rails-3-engine-plugin-gem