Mercurial > evolve
view tests/test-wireproto.t @ 1786:b674277ea4ef stable
uncommit: don't lose copy information of remaining files (issue5403)
As reported in the issue, "hg uncommit" would lose copy information of
the files that remained in the commit. The problem was simply that the
a dict of copies was iterated as "src, dst in copies.items()" where it
should have been "dst, src ...".
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 31 Jan 2017 12:32:45 -0800 |
parents | b1158ce4ec50 |
children | 61dd08f4dc62 9f42f819267b |
line wrap: on
line source
$ cat >> $HGRCPATH <<EOF > [defaults] > amend=-d "0 0" > [experimental] > obsmarkers-exchange-debug=true > bundle2-exp=true > [ui] > ssh=python "$RUNTESTDIR/dummyssh" > [phases] > publish = False > [extensions] > EOF $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH $ mkcommit() { > echo "$1" > "$1" > hg add "$1" > hg ci -m "add $1" > } setup repo $ hg init server $ hg clone ssh://user@dummy/server client no changes found updating to branch default 0 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cp -r client other Smoke testing =============== $ cd client $ mkcommit 0 $ mkcommit a $ hg push pushing to ssh://user@dummy/server searching for changes remote: adding changesets remote: adding manifests remote: adding file changes remote: added 2 changesets with 2 changes to 2 files $ hg pull pulling from ssh://user@dummy/server searching for changes no changes found $ hg pull -R ../other pulling from ssh://user@dummy/server requesting all changes adding changesets adding manifests adding file changes added 2 changesets with 2 changes to 2 files (run 'hg update' to get a working copy) $ hg push -R ../other pushing to ssh://user@dummy/server searching for changes no changes found [1] Push ============= $ echo 'A' > a $ hg amend $ hg push pushing to ssh://user@dummy/server searching for changes remote: adding changesets remote: adding manifests remote: adding file changes remote: added 1 changesets with 1 changes to 1 files (+1 heads) remote: obsmarker-exchange: 139 bytes received remote: 2 new obsolescence markers $ hg push pushing to ssh://user@dummy/server searching for changes no changes found [1] Pull ============= $ hg -R ../other pull pulling from ssh://user@dummy/server searching for changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to [12] files \(\+1 heads\) (re) obsmarker-exchange: 139 bytes received 2 new obsolescence markers (run 'hg heads' to see heads, 'hg merge' to merge) $ hg -R ../other pull pulling from ssh://user@dummy/server searching for changes no changes found Test some markers discovery =========================== $ echo c > C $ hg add C $ hg commit -m C $ echo c >> C $ hg amend $ hg push pushing to ssh://user@dummy/server searching for changes remote: adding changesets remote: adding manifests remote: adding file changes remote: added 1 changesets with 1 changes to 1 files remote: obsmarker-exchange: 139 bytes received remote: 2 new obsolescence markers $ hg -R ../other pull pulling from ssh://user@dummy/server searching for changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files obsmarker-exchange: 139 bytes received 2 new obsolescence markers (run 'hg update' to get a working copy) some common hidden $ hg touch . $ hg push pushing to ssh://user@dummy/server searching for changes remote: adding changesets remote: adding manifests remote: adding file changes remote: added 1 changesets with 0 changes to 1 files (+1 heads) remote: obsmarker-exchange: 208 bytes received remote: 1 new obsolescence markers $ hg -R ../other pull pulling from ssh://user@dummy/server searching for changes adding changesets adding manifests adding file changes added 1 changesets with 0 changes to 1 files (+1 heads) obsmarker-exchange: 208 bytes received 1 new obsolescence markers (run 'hg heads' to see heads, 'hg merge' to merge) $ cd ..