merge: replace a repo.lookup('.') by more typical repo['.'].node()
The `repo.lookup('.')` form comes from
b3311e26f94f (merge: fix
--preview to show all nodes that will be merged (
issue2043).,
2010-02-15). I don't know why that commit changed from `repo['.']`,
but I don't think there's any reason to do that. Note that performance
should not be a reason (anymore?), because repo.lookup() is
implemented by first creating a context object.
Differential Revision: https://phab.mercurial-scm.org/D7998
$ hg init
$ echo foo > bar
$ hg commit -Am default
adding bar
$ hg up -r null
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg branch mine
marked working directory as branch mine
(branches are permanent and global, did you want a bookmark?)
$ echo hello > world
$ hg commit -Am hello
adding world
$ hg up -r null
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg branch other
marked working directory as branch other
$ echo good > bye
$ hg commit -Am other
adding bye
$ hg up -r mine
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg clone -U -u . .#other ../b -r 0 -r 1 -r 2 -b other
abort: cannot specify both --noupdate and --updaterev
[255]
$ hg clone -U .#other ../b -r 0 -r 1 -r 2 -b other
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
$ rm -rf ../b
$ hg clone -u . .#other ../b -r 0 -r 1 -r 2 -b other
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
updating to branch mine
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
$ hg clone -u 0 .#other ../b -r 0 -r 1 -r 2 -b other
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
$ hg clone -u 1 .#other ../b -r 0 -r 1 -r 2 -b other
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
updating to branch mine
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
$ hg clone -u 2 .#other ../b -r 0 -r 1 -r 2 -b other
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
updating to branch other
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
Test -r mine ... mine is ignored:
$ hg clone -u 2 .#other ../b -r mine -r 0 -r 1 -r 2 -b other
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
updating to branch other
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
$ hg clone .#other ../b -b default -b mine
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+2 heads)
new changesets 8c68ee086fd0:fcc393352796
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
$ hg clone .#other ../b
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
new changesets fcc393352796
updating to branch other
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b
$ hg clone -U . ../c -r 1 -r 2 > /dev/null
$ hg clone ../c ../b
updating to branch other
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm -rf ../b ../c