248
248
$ bzr merge-upstream --version 0.2 http://scruff.org/bzr/scruff.dev
253
When merging a package you should use the ``merge-package`` command,
254
which knows about packages in a way that ``merge`` does not. This
255
knowledge allows it to reconcile deviations in the upstream
256
ancestry so that they don't cause excess conflicts. (Note that the
257
command works whether or not there are deviations in the upstream
260
The command works in the same way as ``merge``. For example::
262
$ cd scruff-unstable/
263
$ bzr merge-package ../scruff-experimental
265
will leave the branch in the same state as a normal merge allowing
266
you to review the changes and commit.
268
In a small number of cases, however, the source `upstream` and target
269
`packaging` branches will have conflicts that cause the following error
272
$ bzr merge-package ../scruff-highly-experimental
273
The upstream branches for the merge source and target have diverged.
274
Unfortunately, the attempt to fix this problem resulted in conflicts.
275
Please resolve these, commit and re-run the "merge-package" command to
277
Alternatively, until you commit you can use "bzr revert" to restore the
278
state of the unmerged branch.
280
This will leave you in a conflicted tree, and you can deal with the conflicts
281
and use ``resolve`` as normal. Once you have resolved all the conflicts you
282
need to commit and then run the same ``merge-package`` command again to
283
complete the operation. As with normal merges until you commit you can
284
use ``revert`` to return you to the state before you started.
250
286
Importing a source package from elsewhere
251
287
#########################################