This is the documentation for older versions of Odoo (formerly OpenERP).

See the new Odoo user documentation.

See the new Odoo technical documentation.

Working with Launchpad

Registration and Configuration

要在Launchpad上提交代码,你肯定是需要去注册一下的。

https://launchpad.net 首页的右上方的 Login/Register 就是咱注册的地儿了。

You enter your e-mail address and you wait for an e-mail which will guide you trough the process needed to create your login.

使用bazaar 提交代码到 openerp-commiter 或 你自己的分支上的时候,才需要您登录

You can refer to this link : https://help.launchpad.net/YourAccount/NewAccount

Any contributor who is interested to become a committer must show his interest on working for openerp project and ability to do it properly as selection is based on merit. It can be by proposing bug fixes, features requested on our bug tracker system. You can even suggest additional modules and/or functionality on our bug tracker system.

你可以在 https://help.launchpad.net/Teams/Joining 加入一些开发团队。

Contributors are people who want to help the project improve, add functionality and improve stability. Anyone can contribute on the project by reporting bugs, proposing some improvement and posting patch.

OpenERP 社区团队地址: https://launchpad.net/~openerp-community

Member of the quality and committer team are automatically members of the community.

安装 Bazaar

Get Bazaar version control to pull the source from Launchpad.

To install bazaar on any ubuntu distribution, you can edit /etc/apt/sources.list by

sudo gedit /etc/apt/sources.list

and put these lines in it:

(for ubuntu intrepid 8.10)
deb http://ppa.launchpad.net/bzr/ubuntu intrepid main
deb-src http://ppa.launchpad.net/bzr/ubuntu intrepid main

or (for ubuntu jaunty 9.04)
deb http://ppa.launchpad.net/bzr/ubuntu jaunty main
deb-src http://ppa.launchpad.net/bzr/ubuntu jaunty main

or (for ubuntu karmic 9.10)
deb http://ppa.launchpad.net/bzr/ubuntu karmic main
deb-src http://ppa.launchpad.net/bzr/ubuntu karmic main

Here, intrepid, jaunty and karmic are version names of ubuntu, replace it with your ubuntu version.

接下来要做的

sudo apt-get install bzr

To work correctly, bzr version must be at least 1.3. Check it with the command:

bzr --version

If you have an older version check this url: http://bazaar-vcs.org/Download On debian, in any distribution, the 1.5 version is working, you can get it on this url: http://backports.org/debian/pool/main/b/bzr/bzr_1.5-1~bpo40+1_i386.deb

当你遇到关于 Bazaar 的使用问题前, 请参阅 Bazaar 版本控制的常见问题(F.A.Q) .

工作分支

The combination of Bazaar branch hosting and Launchpad's teams infrastructure gives you a very powerful capability to collaborate on code. Essentially, you can push a branch into a shared space and anyone on that team can then commit to the branch.

This means that you can use Bazaar in the same way that you would use something like SVN, i.e. centrally hosting a branch that many people commit to. You have the added benefit, though, that anyone outside the team can always create their own personal branch of your team branch and, if they choose, upload it back to Launchpad.

This is the official and proposed way to contribute on OpenERP and OpenObject.

快捷参考

获取最新源码及创建你自己的OpenERP分支,可以按下面的命令操作:

bzr branch lp:openerp
cd openerp
./bzr_set.py

这些命令将下载运行 OpenERP 的所有的源码包含(server, client, addons), 接下来,将 addons 文件夹软链到 server addons 文件夹下,就可以直接使用 addons 中的所有业务模块了. 现在你可以修改 bzr_set.py 中代码源为你本地地址, 并可以开始编辑代码, 提交代码到你自己的本地代码分支.

EDIT addons/account/account.py
cd addons
bzr ci -m "Testing Modifications"

Once your code is good enough and follow the 编码指南, you can push your branch in launchpad. You may have to create an account on launchpad first, register your public key, and subscribe to the openerp-community team. Then, you can push your branch. Suppose you want to push your addons:

cd addons
bzr push lp:~openerp-community/openobject-addons/YOURLOGIN_YOURBRANCHNAME
bzr bind lp:~openerp-community/openobject-addons/YOURLOGIN_YOURBRANCHNAME

After having done that, your branch is public on Launchpad, in the OpenObject project, and committers can work on it, review it and propose for integration in the official branch. The last line allows you to rebind your branch to the one which is on launchpad, after having done this, your commit will be applied on launchpad directly (unless you use --local):

bzr pull    # Get modifications on your branch from others
EDIT STUFF
bzr ci    # commit your changes on your public branch

如果你是针对某个公开BUG的修正提交,你可以在提交给你自己分支的时候提交一个bug的ID标记:

bzr ci --fixes=lp:453123   # Where 453123 is a bug ID

Once your branch is mature, mark it as mature in the web interface of launchpad and request for merging in the official release. Your branch will be reviewed by a committer and then the quality team to be merged in the official release.

[更多请参见:ref:OpenERP 团队 <openerp-team>]

发布一个新分支

If you want to contribute on OpenERP or OpenObject, here is the proposed method:

  • You create a branch on launchpad on the project that interests you. It's important that you create your branch on launchpad and not on your local system so that we can easily merge, share code between projects and centralize future developments.

  • You develop your own features or bugfixes in your own branch on launchpad. Don't forget to set the status of your branch (new, experimental, development, mature, ...) so that contributors know what they can and cannot use.

  • Once your code is good enough, propose your branch for merging

  • Your work will be evaluated by a member of the committers team.

    • If they accept your branch for integration in the official version, they will submit to the quality team that will review and merge in the official branch.

    • If the committer team refuses your branch, they will explain why so that you can review the code to better fit the guidelines (problem for future migrations, ...)

The extra-addons branch, that stores all extra modules, is directly accessible to all committers. If you are a committer, you can work directly on this branch and commit your own work. This branch does not require a validation of the quality team. You should put there your special modules for your own customers.

If you want to propose or develop new modules, we suggest creating your own branch in the openobject-addons project and develop within your branch. You can fill in a bug to request that your modules are integrated in one of the two branches:

  • extra-addons : if your module touches a few companies

  • addons : if your module will be useful for most of the companies

We invite all our partners and contributors to work in that way so that we can easily integrate and share the work done between the different projects.

After having done that, your branch is public on Launchpad, in the OpenObject project, and committers can work on it, review it and propose for integration in the official branch. The last line allows you to rebind your branch to the one which is on launchpad, after having done this, your commit will be applied on launchpad directly (unless you use --local):

bzr pull    # Get modifications on your branch from others
EDIT STUFF
bzr ci    # commit your changes on your public branch

如果你是针对某个公开BUG的修正提交,你可以在提交给你自己分支的时候提交一个bug的ID标记:

bzr ci --fixes=lp:453123   # Where 453123 is a bug ID

Once your branch is mature, mark it as mature in the web interface of launchpad and request for merging in the official release. Your branch will be reviewed by a committer and then the quality team to be merged in the official release.

怎样提交你的成果

If you want to contribute on OpenERP or OpenObject, here is the proposed method:

  • You create a branch on launchpad on the project that interests you. It's important that you create your branch on launchpad and not on your local system so that we can easily merge, share code between projects and centralize future developments.

  • You develop your own features or bugfixes in your own branch on launchpad. Don't forget to set the status of your branch (new, experimental, development, mature, ...) so that contributors know what they can and cannot use.

  • Once your code is good enough, propose your branch for merging

  • Your work will be evaluated by a member of the committers team.

    • If they accept your branch for integration in the official version, they will submit to the quality team that will review and merge in the official branch.

    • If the committer team refuses your branch, they will explain why so that you can review the code to better fit the guidelines (problem for future migrations, ...)

The extra-addons branch, that stores all extra modules, is directly accessible to all committers. If you are a committer, you can work directly on this branch and commit your own work. This branch does not require validation by the quality team. You should put there your special modules for your own customers.

If you want to propose or develop new modules, we suggest creating your own branch in the openobject-addons project and develop within your branch. You can fill in a bug to request that your modules are integrated in one of the two branches:

  • extra-addons branch : if your module touches a few companies

  • addons : if your module will be useful for most of the companies

We invite all our partners and contributors to work in that way so that we can easily integrate and share the work done between the different projects.

Answer Tracker and Bugs Management

We use launchpad on the openobject project to track all bugs and features request related to openerp and openobject. the bug tracker is available here:

Every contributor can report bug and propose bugfixes for the bugs. The status of the bug is set according to the correction.

When a particular branch fixes the bug, a committer (member of the Commiter Team) can set the status to "Fix Committed". Only committers have the right to change the status to "Fix Committed.", after they validated the proposed patch or branch that fixes the bug.

The Quality Team have a look every day to bugs in the status "Fix Committed". They check the quality of the code and merge in the official branch if it's OK. To limit the work of the quality team, it's important that only committers can set the bug in the status "Fix Committed". Once quality team finish merging, they change the status to "Fix Released".

Translation

翻译由“Launchpad Web interface”管理。在这里你会找到可译项目的清单。

请在问问题前阅读 FAQ

Blueprints

Blueprint is a lightweight way to manage releases of your software and to track the progress of features and ideas, from initial concept to implementation. Using Blueprint, you can encourage contributions from right across your project's community, while targeting the best ideas to future releases.

Launchpad Blueprint helps you to plan future release with two tools:

  • milestones: points in time, such as a future release or development sprint

  • series goals: a statement of intention to work on the blueprint for a particular series.

Although only drivers can target blueprints to milestones and set them as series goals, anyone can propose a blueprint as a series goal. As a driver or owner, you can review proposed goals by following the Set goals link on your project's Blueprint overview page.

By following the Subscribe yourself link on a blueprint page, you can ask Launchpad to send you email notification of any changes to the blueprint. In most cases, you'll receive notification only of changes made to the blueprint itself in Launchpad and not to any further information, such as in an external wiki.

However, if the wiki software supports email change notifications, Launchpad can even notify you of changes to the wiki page.

If you're a blueprint owner and want Launchpad to know about updates to the related wiki page, ask the wiki admin how to send email notifications. Notifications should go to notifications@specs.launchpad.net.

Blueprints for OpenERP are listed here: