tests/test-convert-git.out
author Nicolas Dumazet <nicdumz.commits@gmail.com>
Sat, 23 May 2009 18:44:01 +0900
changeset 8600 d46cdfcecaf1
parent 8271 e3d3dad805f9
child 8691 a0a541d6fed6
permissions -rw-r--r--
inotify: proper fix for issue1542 (partially reverting 67e59a9886d5) issue1542 description: Unknown files (?) placed in a directory are still marked as present and unknown when the containing directory is moved out of the repository scope. Why 67e59a9886d5 was bad: * When the problem we're addressing only deals with unknown files, the fix to updatestatus applies for all statuses * The only reason to move the call schedule_work(wpath, 'd') seems to be that it allowed an updatestatus call on the deleted directory, in deleted(). But deleted() should not be called on directories in the first place. * After fixing an independant issue (1371), test-inotify-issue1542 was failing Fix: When processing a deletion of a directory, walk the tree of the unknown files and remove the entries from repowatcher. This step does not need to be added in the generic scan() routine: it is only necessary on a directory deletion.

rm 'd/b'
assuming destination git-repo-hg
initializing destination git-repo-hg repository
scanning source...
sorting...
converting...
5 t1
4 t2
3 t3
2 t4.1
1 t4.2
0 Merge branch other
changeset:   5:c78094926be2
tag:         tip
parent:      3:f5f5cb45432b
parent:      4:4e174f80c67c
user:        test <test@example.org>
date:        Mon Jan 01 00:00:15 2007 +0000
files:       a
description:
Merge branch other


% full conversion
@    9 "Discard change to foo" files: foo
|\
| o  8 "change foo" files: foo
| |
o |  7 "change bar" files: bar
|/
o    6 "(octopus merge fixup)" files:
|\
| o    5 "Octopus merge" files: baz
| |\
o | |  4 "add baz" files: baz
| | |
+---o  3 "add bar" files: bar
| |
o |  2 "add quux" files: quux
| |
| o  1 "change foo" files: foo
|/
o  0 "add foo" files: foo

245a3b8bc653999c2b22cdabd517ccb47aecafdf 644   bar
354ae8da6e890359ef49ade27b68bbc361f3ca88 644   baz
9277c9cc8dd4576fc01a17939b4351e5ada93466 644   foo
88dfeab657e8cf2cef3dec67b914f49791ae76b1 644   quux
% foo bar baz: octopus merge
@    8 "Discard change to foo" files: foo
|\
| o  7 "change foo" files: foo
| |
o |  6 "change bar" files: bar
|/
o    5 "(octopus merge fixup)" files:
|\
| o    4 "Octopus merge" files: baz
| |\
o | |  3 "add baz" files: baz
| | |
+---o  2 "add bar" files: bar
| |
| o  1 "change foo" files: foo
|/
o  0 "add foo" files: foo

245a3b8bc653999c2b22cdabd517ccb47aecafdf 644   bar
354ae8da6e890359ef49ade27b68bbc361f3ca88 644   baz
9277c9cc8dd4576fc01a17939b4351e5ada93466 644   foo
% foo baz quux: only some parents of an octopus merge; "discard" a head
@  6 "Discard change to foo" files: foo
|
o  5 "change foo" files: foo
|
o    4 "Octopus merge" files:
|\
| o  3 "add baz" files: baz
| |
| o  2 "add quux" files: quux
| |
o |  1 "change foo" files: foo
|/
o  0 "add foo" files: foo

354ae8da6e890359ef49ade27b68bbc361f3ca88 644   baz
9277c9cc8dd4576fc01a17939b4351e5ada93466 644   foo
88dfeab657e8cf2cef3dec67b914f49791ae76b1 644   quux

% test binary conversion (issue 1359)
% convert binary file
initializing destination git-repo3-hg repository
scanning source...
sorting...
converting...
0 addbinary
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
4096

% test author vs committer
% convert author committer
initializing destination git-repo4-hg repository
scanning source...
sorting...
converting...
1 addfoo
0 addfoo2
changeset:   1:d63e967f93da
tag:         tip
user:        nottest <test@example.org>
date:        Mon Jan 01 00:00:21 2007 +0000
files:       foo
description:
addfoo2

committer: test <test@example.org>


changeset:   0:0735477b0224
user:        test <test@example.org>
date:        Mon Jan 01 00:00:20 2007 +0000
files:       foo
description:
addfoo