Intent of TestCommitMerge.test_merge_new_file?

Martin Pool mbp at canonical.com
Mon May 29 01:50:43 BST 2006


On 27 May 2006, Aaron Bentley <aaron.bentley at utoronto.ca> wrote:
> Oh, we have that:
> bzrlib.tests.test_merge_core.FunctionalMergeTest.test_merge_unrelated.
> 
> I'm working on the nested by-value trees, so when I add functionality
> for joining trees, I will add tests at the same time.

Great.

> My thinking is that "bzr graft foo/bar foo" will
> 1. fetch all revisions from bar into foo
> 2. set a pending merge in foo, of the last revision of bar
> 3. add all entries from the inventory of bar into foo, but with bar's
> tree root being a child of the foo root.
> 4. remove the control directory for bar
> 5. commit?

That sounds about right but I don't understand the command-line syntax.
I would expect 'bzr graft FROM_DIR TO_DIR', where the two directories
are presently in different branches.  (Did you mean to just say 'graft
bar foo'?)

I think foo should be the name of a new or existing directory under the
destination branch.  If it's the root of the branch, then bar will be
grafted in at the root (similar to a merge of unrelated trees with the
current code.)  So typical use will be 'bzr graft ../somelibrary
./library'.

We should test that revert correctly undoes the graft as I imagine
people will fairly often change their mind or decide to graft it
somewhere else. 

-- 
Martin




More information about the bazaar mailing list