2011-05-19 62 views
3

我想为定义的Plone安装/版本开发一些产品,我不能更改(3.3.5)。如何设置Plone产品的开发

什么是最好的方式来组织我的源代码树,以便我不必将巨大的plone实例放入源代码管理,不会改变呢?我仍然想使用buildout进行本地检查,但...

你有什么建议?

我在Windows和喜欢GIT中汞,但可以同...

回答

10

一般来说,这样做是现在给天mr.developer生活。您可以使用附加件这样的:

[buildout] 
extends = 
    https://raw.githubusercontent.com/plock/pins/master/plone-4-3 
    https://raw.githubusercontent.com/plock/pins/master/dev 

,然后添加你的源代码给auto-checkout参数在[buildout]部分,并在[sources]部分的格式描述如下:

喜欢的东西:

[buildout] 
auto-checkout = my.package 

[sources] 
my.package = git https://url.to/my.package 

那么你的包添加到plone.recipe.zope2instance部分照常eggs参数:

[instance] 
recipe = plone.recipe.zope2instance 
eggs = 
    Pillow 
    Plone 
    my.package 

参见工作示例Plone的coredev扩建:

和唐不要忘记[buildout]部分有一个develop参数,它允许您指定文件系统路径到“开发蛋”(不,虽然执行检出):

[buildout] 
develop = src/my.package 
+3

我通常还会在[buildout]部分放置always-checkout = true,以便在运行构建时自动更新结帐。 – 2011-05-20 15:47:29

+2

我还添加了“eggtractor”,那么你甚至不需要指定“develop =”变量。只需使用'extensions + = buildout.eggtractor' – Auspex 2011-05-21 02:24:31

+2

我查找了[mr.developer使用信息](https://pypi.python.org/pypi/mr.developer/#usage),发现'always-checkout'确实(正如我所希望的那样)是指“自动结账”软件包。太好了! – Tobias 2015-06-26 12:52:28

1

只需创建一个构建。在你的蛋/产品的根目录CFG文件,并从集体延长plonetest扩建:

[buildout] 
extends = 
    http://svn.plone.org/svn/collective/buildout/plonetest/plone-3.3.x.cfg 

package-name = collective.mypackage 

这样你就只需要两个文件(buildout.cfg和bootstrap.py)添加到您的存储库。

查看http://svn.plone.org/svn/plone/plone.app.discussion/trunk/的完整示例。

如果你开发了多个包,mr.developer可能是最好的选择。

相关问题