[Bug 4741] bzr shelve is confusing to me

Matthieu Moy Matthieu.Moy at imag.fr
Thu Nov 24 21:38:02 GMT 2005


Brad Bollenbach <brad.bollenbach at gmail.com> writes:

> We have a policy that says that we don't mix our changes with merging
> in upstream changes,

Good (and almost universal I think) practice.

> I could also commit first instead, which I sometimes do, but I like
> to try and keep my commits pretty clean 

You have this problem because you "undo+merge+redo" at a moment when
your tree is not "clean". Well, there are probably some arguments in
favor of this, but I think your version control commands should be
driven by your work, not the upstream work. If you started something,
then finish it first, then commit, then merge.

If you have something long to implement, and you want to merge several
times before commiting, then microbranches are for you (and inside a
microbranch of your main branch, you can "pull" which does roughly
what you describe. Then, the main branch can also "pull" the
microbranch).

> rather than, for example, committing debugging code.

If you have debugging code in your tree, it means there's something in
your code that you don't understand. Incorporating upstream changes at
this momend does not seem to be the best thing to do. Moreover,
there's a risk of conflict in the debug code itself that you wouldn't
have had if you had finished your task before merging.

-- 
Matthieu




More information about the bazaar mailing list