Mercurial > hg-stable
annotate tests/test-eol-tag.t @ 32323:8a1ff5ed620e
extdiff: copy back execbit-only changes to the working directory
Some tools like BeyondCompare allow the file mode to be changed. The change
was previously applied if the content of the file changed (either according to
size or mtime), but was not being copied back for a mode-only change. That
would seem to indicate handling this in an 'elif' branch, but I opted not to in
order to avoid copying back the mode without the content changes when mtime and
size are unchanged. (Yes, that's a rare corner case, but all the more reason
not to have a subtle difference in behavior.)
The only way I can think to handle this undetected change is to set each file in
the non-wdir() snapshot to readonly, and check for that attribute (as well as
mtime) when deciding to copy back. That would avoid the overhead of copying the
whole file when only the mode changed. But a chmod in a diff tool is likely
rare. See also affd753ddaf1.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Thu, 11 May 2017 22:33:45 -0400 |
parents | 2fc86d92c4a9 |
children |
rev | line source |
---|---|
26420
2fc86d92c4a9
urls: bulk-change BTS urls to new location
Matt Mackall <mpm@selenic.com>
parents:
16913
diff
changeset
|
1 https://bz.mercurial-scm.org/2493 |
12974
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
2 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
3 Testing tagging with the EOL extension |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
4 |
13519
43b3b761d9d1
tests: don't overwrite HGRCPATH
Martin Geisler <mg@aragost.com>
parents:
12974
diff
changeset
|
5 $ cat >> $HGRCPATH <<EOF |
12974
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
6 > [extensions] |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
7 > eol = |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
8 > |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
9 > [eol] |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
10 > native = CRLF |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
11 > EOF |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
12 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
13 setup repository |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
14 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
15 $ hg init repo |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
16 $ cd repo |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
17 $ cat > .hgeol <<EOF |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
18 > [patterns] |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
19 > ** = native |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
20 > EOF |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
21 $ printf "first\r\nsecond\r\nthird\r\n" > a.txt |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
22 $ hg commit --addremove -m 'checkin' |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
23 adding .hgeol |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
24 adding a.txt |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
25 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
26 Tag: |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
27 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
28 $ hg tag 1.0 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
29 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
30 Rewrite .hgtags file as it would look on a new checkout: |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
31 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
32 $ hg update -q null |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
33 $ hg update -q |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
34 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
35 Touch .hgtags file again: |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
36 |
75e4fade4ad9
eol: exclude .hgtags file from eol translation (issue2493)
Colin Caughie <c.caughie@indigovision.com>
parents:
diff
changeset
|
37 $ hg tag 2.0 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13521
diff
changeset
|
38 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
13521
diff
changeset
|
39 $ cd .. |