跳转到主要内容

ZC buildout 扩展,用于从各种版本控制系统中检出egg

项目描述

什么是gp.vcsdevelop ?

此包允许您使用 zc.buildout 将某些包检出并用作开发egg。

可用选项

  • develop-dir:检出包的目录

  • vcs-extend-develop:vcs url列表。参见pip的editable参数。支持的方案有ssh、svn、git、hg、bzr、sftp。

  • vcs-update:

    如果设置为true,则每次运行buildout时都尝试更新egg。例如,对于hg+https运行hg pull -u

    如果设置为always,则从文件系统中删除现有代码并获取一个新的检出

  • requirements:

    pip需求文件的路径。

使用方法

基本使用

将此包用作zc.buildout扩展,并在vcs-extend-develop选项中提供一些vcs url。

>>> write('buildout.cfg','''
... [buildout]
... extensions=gp.vcsdevelop
... vcs-extend-develop=hg+https://gawel@bitbucket.org/ianb/pip/@tip#egg=pip
... parts=
... ''')

然后,如果您运行 buildout,则软件包将从仓库检出

>>> print 'Start', system(buildout)
Start...
Cloning hg https://gawel@bitbucket.org/ianb/pip/ (to revision tip) to ./pip
Found command 'hg' at '...'
Develop: '/...buildout/pip'
...

软件包可以在 develop-dir 中找到(默认为 .)。您可以覆盖此设置

>>> write('buildout.cfg','''
... [buildout]
... extensions=gp.vcsdevelop
... develop-dir=./src
... vcs-extend-develop=git+https://github.com/pypa/pip.git/@1.1#egg=pip
... parts=
... ''')

>>> print 'Start', system(buildout)
Start...
Cloning https://github.com/pypa/pip.git/ (to 1.1) to ./src/pip
Found command 'git' at '...'
...
Develop: '/...buildout/./src/pip'
...

非Python包

您还可以检出非 Python 软件包,但您将收到警告

>>> write('buildout.cfg','''
... [buildout]
... extensions=gp.vcsdevelop
... develop-dir=./src
... vcs-extend-develop=git+git://github.com/benoitc/couchbeam.git#egg=couchbeam
... parts=
... ''')

>>> print 'Start', system(buildout).strip()
Start...
Cloning git://github.com/benoitc/couchbeam.git to ./src/couchbeam
Found command 'git' at '...'
Warning: ./src/couchbeam is not a python package

Git子模块

gp.vcsdevelop 识别 Git 的第一级子模块

>>> write('buildout.cfg','''
... [buildout]
... extensions=gp.vcsdevelop
... develop-dir=./src
... vcs-extend-develop=git+git://github.com/bearstech/PloneTerminal.git#egg=PloneTerminal
... parts=
... ''')

>>> print 'Start', system(buildout).strip()
Start...
Cloning git://github.com/bearstech/PloneTerminal.git to ./src/PloneTerminal
Found command 'git' at '...'
Submodule 'jquery.terminal' (git://github.com/jcubic/jquery.terminal.git) registered for path 'ploneterminal/statics/jquery.terminal'
<BLANKLINE>
Cloning into ploneterminal/statics/jquery.terminal...
Submodule path 'ploneterminal/statics/jquery.terminal': checked out '...'
<BLANKLINE>
Develop: '/...buildout/./src/PloneTerminal'
...

>>> ls('src', 'PloneTerminal', 'ploneterminal', 'statics', 'jquery.terminal')
d  .git
-  CHANGELOG
-  README
d  css
d  examples
d  js
d  trypython

pip需求文件

gp.vcsdevelop 可以处理您的需求文件。需求文件中包含的所有软件包名称都可以在名为 ${buildout:requirements-eggs} 的变量中找到

>>> write('buildout.cfg','''
... [buildout]
... extensions=gp.vcsdevelop
... develop-dir=./requirements
... requirements = requirements.txt
... parts= eggs
...
... [eggs]
... recipe = zc.recipe.egg
... eggs = ${buildout:requirements-eggs}
... interpreter = python
... ''')

>>> write('requirements.txt', '''
... ConfigObject>=1.0
... -e git+git://github.com/bearstech/PloneTerminal.git#egg=PloneTerminal
... ''')

>>> print 'Start', system(buildout).strip()
Start...
Cloning git://github.com/bearstech/PloneTerminal.git to ./requirements/PloneTerminal
Found command 'git' at '...'
...
Develop: '/...buildout/./requirements/PloneTerminal'
...
Generated interpreter '/...buildout/bin/python'.

>>> print 'File', cat('bin', 'python')
File...
sys.path[0:0] = [
    '.../ConfigObject-....egg',
    '/...buildout/requirements/PloneTerminal',
...

错误

使用 bitbucket 跟踪器。

更改

2.2 (12-07-2011)

  • 使用更多的 pip api

  • 添加 requirements 选项

2.1 (22-05-2011)

  • 注意在软件包根目录中找到的任何 .gitmodules

2.0 (20-05-2011)

  • 不再依赖于 pip。使用 get-pip.py

1.9.4 (04-05-2011)

  • python3 兼容

1.9.2 (04-01-2011)

  • 需要 pip>=0.8

1.9.1 (22-08-2010)

  • 在需求中添加 mercurial

1.9 (22-08-2010)

  • 支持最新的 pip

1.8 (06-08-2010)

  • 始终添加 svn 方案

1.7 (06-08-2010)

  • 修复 pip 0.8 兼容性

1.6 (13-05-2010)

  • 需要 pip>=0.7.1

1.5 (17-02-2010)

  • 将 vcsdevelop-update 重命名为 vcs-update。可以设置为 always

1.4 (24-01-2010)

  • Boris Kocherov 提供的 pip 0.6.3 兼容性

1.3 (13-09-2009)

  • Boris Kocherov 添加 vcsdevelop-update

1.2 (24-08-2009)

  • 允许获取非 Python 软件包

1.1 (29-06-2009)

  • 将 svn 添加到 vcs.schemes

0.4 (04-05-2009)

  • 允许存在现有的 develop 目录

0.2 (27-01-2009)

  • 仅处理以有效可用方案开始的 URL

0.1 (23-01-2009)

  • 没有更改

下载

项目详情


下载文件

为您的平台下载文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源分发

gp.vcsdevelop-2.2.3.zip (145.6 kB 查看哈希值)

上传时间

gp.vcsdevelop-2.2.3.tar.gz (142.0 kB 查看哈希值)

上传时间

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面