sapling/tests/test-convergedmerge.t
Siddharth Agarwal e7b4906871 git_handler: mark source for rename info as Git or Mercurial
See inline comments for why the additional metadata needs to be stored.

This literally breaks all the hashes because of the additional metadata. The
changing of hashes is unfortunate but necessary to preserve bidirectionality.

While this could be broken up into multiple commits, there was no way to do
that while preserving bidirectionality. Following the principle that every
intermediate commit must result in a correct state, I decided to combine the
commits.
2014-12-02 14:17:09 -08:00

80 lines
2.0 KiB
Perl

Load commonly used test logic
$ . "$TESTDIR/testutil"
$ hg init hgrepo1
$ cd hgrepo1
$ echo A > afile
$ hg add afile
$ hg ci -m "origin"
$ echo B > afile
$ hg ci -m "A->B"
$ echo C > afile
$ hg ci -m "B->C"
$ hg up -r0
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo C > afile
$ hg ci -m "A->C"
created new head
$ hg merge -r2
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ hg ci -m "merge"
$ hg log --graph --style compact | sed 's/\[.*\]//g'
@ 4:3,2 eaa21d002113 1970-01-01 00:00 +0000 test
|\ merge
| |
| o 3:0 ea82b67264a1 1970-01-01 00:00 +0000 test
| | A->C
| |
o | 2 0dbe4ac1a758 1970-01-01 00:00 +0000 test
| | B->C
| |
o | 1 7205e83b5a3f 1970-01-01 00:00 +0000 test
|/ A->B
|
o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test
origin
$ cd ..
$ git init --bare gitrepo
Initialized empty Git repository in $TESTTMP/gitrepo/
$ cd hgrepo1
$ hg bookmark -r4 master
$ hg push -r master ../gitrepo
pushing to ../gitrepo
searching for changes
adding objects
added 5 commits with 3 trees and 3 blobs
$ cd ..
$ hg clone gitrepo hgrepo2 | grep -v '^updating'
importing git objects into hg
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
expect the same revision ids as above
$ hg -R hgrepo2 log --graph --style compact | sed 's/\[.*\]//g'
@ 4:1,3 eaa21d002113 1970-01-01 00:00 +0000 test
|\ merge
| |
| o 3 0dbe4ac1a758 1970-01-01 00:00 +0000 test
| | B->C
| |
| o 2:0 7205e83b5a3f 1970-01-01 00:00 +0000 test
| | A->B
| |
o | 1 ea82b67264a1 1970-01-01 00:00 +0000 test
|/ A->C
|
o 0 5d1a6b64f9d0 1970-01-01 00:00 +0000 test
origin
$ hg -R hgrepo2 gverify
verifying rev eaa21d002113 against git commit fb8c9e2afe5418cfff337eeed79fad5dd58826f0