annotate tests/test-dispatch @ 5210:90d9ec0dc69d

merge: forcefully mark files that we get from the second parent as dirty After a hg merge, we want to include in the commit all the files that we got from the second parent, so that we have the correct file-level history. To make them visible to hg commit, we try to mark them as dirty. Unfortunately, right now we can't really mark them as dirty[1] - the best we can do is to mark them as needing a full comparison of their contents, but they will still be considered clean if they happen to be identical to the version in the first parent. This changeset extends the dirstate format in a compatible way, so that we can mark a file as dirty: Right now we use a negative file size to indicate we don't have valid stat data for this entry. In practice, this size is always -1. This patch uses -2 to indicate that the entry is dirty. Older versions of hg won't choke on this dirstate, but they may happily mark the file as clean after a full comparison, destroying all of our hard work. The patch adds a dirstate.normallookup method with the semantics of the current normaldirty, and changes normaldirty to forcefully mark the entry as dirty. This should fix issue522. [1] - well, we could put them in state 'm', but that state has a different meaning.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Thu, 23 Aug 2007 01:48:29 -0300
parents 7a7d4937272b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4561
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
1 #!/bin/sh
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
2 # test command parsing and dispatch
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
3
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
4 hg init a
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
5 cd a
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
6 echo a > a
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
7 hg ci -Ama -d '0 0'
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
8
4622
6fc26982f203 dispatch: fix handling of incorrect number of arguments
Matt Mackall <mpm@selenic.com>
parents: 4561
diff changeset
9 echo "# missing arg"
6fc26982f203 dispatch: fix handling of incorrect number of arguments
Matt Mackall <mpm@selenic.com>
parents: 4561
diff changeset
10 hg cat
6fc26982f203 dispatch: fix handling of incorrect number of arguments
Matt Mackall <mpm@selenic.com>
parents: 4561
diff changeset
11
4561
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
12 echo '% [defaults]'
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
13 hg cat a
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
14 cat > $HGRCPATH <<EOF
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
15 [defaults]
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
16 cat = -v
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
17 EOF
8044be585b91 dispatch: restore a dropped shlex import
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
18 hg cat a
4622
6fc26982f203 dispatch: fix handling of incorrect number of arguments
Matt Mackall <mpm@selenic.com>
parents: 4561
diff changeset
19
4654
e0e73ba37983 Fix dispatch error message when not in a repo
Brendan Cully <brendan@kublai.com>
parents: 4622
diff changeset
20 echo '% no repo'
e0e73ba37983 Fix dispatch error message when not in a repo
Brendan Cully <brendan@kublai.com>
parents: 4622
diff changeset
21 cd ..
e0e73ba37983 Fix dispatch error message when not in a repo
Brendan Cully <brendan@kublai.com>
parents: 4622
diff changeset
22 hg cat
e0e73ba37983 Fix dispatch error message when not in a repo
Brendan Cully <brendan@kublai.com>
parents: 4622
diff changeset
23
e0e73ba37983 Fix dispatch error message when not in a repo
Brendan Cully <brendan@kublai.com>
parents: 4622
diff changeset
24 exit 0
4659
7a7d4937272b Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4654
diff changeset
25