1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
|
Load commonly used test logic
$ . "$TESTDIR/testutil"
$ hg init hgrepo
$ cd hgrepo
$ hg debuggitdir
$TESTTMP/hgrepo/.hg/git
$ echo alpha > alpha
$ hg add alpha
$ fn_hg_commit -m "add alpha"
$ hg log --graph --debug | grep -v phase:
@ changeset: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2
tag: tip
parent: -1:0000000000000000000000000000000000000000
parent: -1:0000000000000000000000000000000000000000
manifest: 0:8b8a0e87dfd7a0706c0524afa8ba67e20544cbf0
user: test
date: Mon Jan 01 00:00:10 2007 +0000
files+: alpha
extra: branch=default
description:
add alpha
$ cd ..
configure for use from git
$ hg clone hgrepo gitrepo
updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd gitrepo
$ hg book master
$ hg up null
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
(leaving bookmark master)
$ echo "[git]" >> .hg/hgrc
$ echo "intree = True" >> .hg/hgrc
$ hg debuggitdir
$TESTTMP/gitrepo/.git
$ hg gexport
do some work
$ git config core.bare false
$ git checkout master 2>&1 | sed s/\'/\"/g
Already on "master"
$ echo beta > beta
$ git add beta
$ fn_git_commit -m 'add beta'
get things back to hg
$ hg gimport
importing 1 git commits
updating bookmark master
new changesets 9f124f3c1fc2 (1 drafts)
$ hg log --graph --debug | grep -v phase:
o changeset: 1:9f124f3c1fc29a14f5eb027c24811b0ac9d5ff10
| bookmark: master
| tag: tip
| parent: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2
| parent: -1:0000000000000000000000000000000000000000
| manifest: 1:f0bd6fbafbaebe4bb59c35108428f6fce152431d
| user: test <test@example.org>
| date: Mon Jan 01 00:00:11 2007 +0000
| files+: beta
| extra: branch=default
| extra: hg-git-rename-source=git
| description:
| add beta
|
|
o changeset: 0:0221c246a56712c6aa64e5ee382244d8a471b1e2
parent: -1:0000000000000000000000000000000000000000
parent: -1:0000000000000000000000000000000000000000
manifest: 0:8b8a0e87dfd7a0706c0524afa8ba67e20544cbf0
user: test
date: Mon Jan 01 00:00:10 2007 +0000
files+: alpha
extra: branch=default
description:
add alpha
gimport should have updated the bookmarks as well
$ hg bookmarks
master 1:9f124f3c1fc2
gimport support for git.mindate
$ cat >> .hg/hgrc << EOF
> [git]
> mindate = 2014-01-02 00:00:00 +0000
> EOF
$ echo oldcommit > oldcommit
$ git add oldcommit
$ GIT_AUTHOR_DATE="2014-03-01 00:00:00 +0000" \
> GIT_COMMITTER_DATE="2009-01-01 00:00:00 +0000" \
> git commit -m oldcommit > /dev/null || echo "git commit error"
$ hg gimport
no changes found
$ hg log --graph
o changeset: 1:9f124f3c1fc2
| bookmark: master
| tag: tip
| user: test <test@example.org>
| date: Mon Jan 01 00:00:11 2007 +0000
| summary: add beta
|
o changeset: 0:0221c246a567
user: test
date: Mon Jan 01 00:00:10 2007 +0000
summary: add alpha
$ echo newcommit > newcommit
$ git add newcommit
$ GIT_AUTHOR_DATE="2014-01-01 00:00:00 +0000" \
> GIT_COMMITTER_DATE="2014-01-02 00:00:00 +0000" \
> git commit -m newcommit > /dev/null || echo "git commit error"
$ hg gimport
importing 2 git commits
updating bookmark master
new changesets befdecd14df5:3d10b7289d79 (2 drafts)
$ hg log --graph
o changeset: 3:3d10b7289d79
| bookmark: master
| tag: tip
| user: test <test@example.org>
| date: Wed Jan 01 00:00:00 2014 +0000
| summary: newcommit
|
o changeset: 2:befdecd14df5
| user: test <test@example.org>
| date: Sat Mar 01 00:00:00 2014 +0000
| summary: oldcommit
|
o changeset: 1:9f124f3c1fc2
| user: test <test@example.org>
| date: Mon Jan 01 00:00:11 2007 +0000
| summary: add beta
|
o changeset: 0:0221c246a567
user: test
date: Mon Jan 01 00:00:10 2007 +0000
summary: add alpha
|