问题描述
|
我想为定义的Plone安装/版本开发一些产品,我无法更改(3.3.5)。
组织源代码树的最佳方法是什么,这样我就不必将庞大的plone实例放到仍然不会更改的源代码控制中?我仍然想使用buildout进行本地检查,但是...
你有什么建议吗?
我在Windows上并且更喜欢git而不是hg,但是可以同时使用两者...
解决方法
一般来说,现在是用
mr.developer
完成的。您可以使用如下所示的扩展:
[buildout]
extends =
https://raw.githubusercontent.com/plock/pins/master/plone-4-3
https://raw.githubusercontent.com/plock/pins/master/dev
然后按照以下描述的格式,将您的源添加到[buildout]
部分和[sources]
部分的auto-checkout
参数中:
http://pypi.python.org/pypi/mr.developer
就像是:
[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扩展:
https://github.com/plone/buildout.coredev
并且不要忘了[buildout]
部分有一个develop
参数,它允许您指定\“ develop egg \”的文件系统路径(尽管它不执行检出):
[buildout]
develop = src/my.package
,我不确定通过组织源代码树意味着什么...
无论如何,您都需要查看以下内容:
http://plone.org/products/zopeskel用于生成包结构
http://plone.org/documentation/manual/developer-manual开发人员手册文档
和http://collective-docs.plone.org/社区提供了howtos
如果可以,请同时获得Martin Aspeli的“专业克隆开发”书
您选择的SCM与Plone无关。自行选择。
,只需在egg / product的根目录中创建一个buildout.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可能是您的最佳选择。