release command's merge may be inefficient
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ezbzr |
New
|
Undecided
|
Unassigned |
Bug Description
The first part of the release command's processing is to create a local temporary branch that matches that of the target to which you are releasing. It does this by sprouting a new branch from the local branch and then doing a pull and overwrite from the target branch.
The argument made in the code for doing it this way is for speed -- trying to create the local temp branch as quickly as possible.
At the time ezbzr was created (bzr 0.6 timeframe?), this may well have been the best way to do it. It seems like bzr may now have a better way to create this quickly. This should be investigated.
I also notice that release is creating a working tree. While this is important if you have conflicts, perhaps we could postpone doing this until later in the process or perhaps avoid it altogether in many cases.