← Back to team overview

gtg team mailing list archive

Re: Adding dependency for gtg

 

On Wed, 2 Dec 2009 22:23:52 -1000, Luca Invernizzi
<invernizzi.l@xxxxxxxxx>
wrote:
> Sorry for the plethora of commit mails. I have to learn cherrypicking in
> bzr.

The rule of thumb is to never never push anything to the trunk except a
fresh checkout of the trunk. It means that, after working on a branch
called "mybranch", you have to do :



- bzr branch trunk   (put a fresh version of the trunk in your home)
- cd mybranch
- bzr merge ../trunk  (merge the trunk in your branch to solve all the
problems that might happen. This is optional for branch with minor changes)
- bzr commit "merge with trunk"
- cd ../trunk
- bzr merge ../mybranch  (now we effectively merge your branch in the
trunk)
- test your "soon-to-be-trunk" (make check, make lint, ./scripts/debug.sh)
- bzr commit -m "this commit fixes bug XXX and add a full featured kitchen
sink to the GTG subsystem. We hope to add a vacuum cleaner in the future"
- bzr push lp:gtg


Pushing from a branch can result (and it already happened) in loosing
certain commits. The change are not lost but the commit numbers are
changed, which is very very frustrating and a recipe for regression.


Pushing should only happen in trunk and pushing should only add one commit
at a time. Your current commit should be N+1 regarding the published trunk
and commits N should be the same both in your folder and on Launchpad.


I hope it helps ;-)

Lionel



References