presenting the fundamental abstractions

Lukáš Lalinský lalinsky at gmail.com
Thu Sep 13 08:19:22 BST 2007


On Št, 2007-09-13 at 08:34 +1000, Andrew King wrote:
> Thanks again everyone for the clarification ... you have given me some
> more questions though!
> 
> Someone came to me yesterday, and said that they wanted one particular
> revision from one branch in another branch.
> 
> So we tried bzr merge -r901..902 ../trunk
> 
> It gave us all the changes I would expect from that revision.

Again, revision is a state. So here you are merging the change from
revision 902 to 901 (902's left-most parent), not the revision itself.
Merging the revision 902 would mean merging also all it's parents
recursively, because it depends on them.

> My question is what is this really doing if a branch is a pointer to
> one revision? 

This just takes the change and applies it as a patch to the working
tree, forgetting about original revision ID and parent revisions. (btw,
this is what git or hg do as well, but git calls it cherry-picking, bzr
doesn't)

http://bazaar-vcs.org/Specs/RecordCherryPick

> What happens later if I subsequently try merging?
> Basically, is this dangerous to do?

It's the same situation as if you would have applied a patch and
committed it, and later merged another branch which contains this patch
as well, but committed by somebody else. I think the 3-way merge
algorithm should handle this fine in most cases, but that's just my
guess and experience from a few simple cases -- I'm sure somebody will
correct me if I'm wrong. :)

Lukas

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Toto je =?ISO-8859-1?Q?digit=E1lne?=
	=?ISO-8859-1?Q?_podp=EDsan=E1?= =?UTF-8?Q?_=C4=8Das=C5=A5?=
	=?ISO-8859-1?Q?_spr=E1vy?=
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20070913/d574044a/attachment.pgp 


More information about the bazaar mailing list