Mercurial > hg
annotate tests/test-mq-symlinks @ 8810:ac92775b3b80
Add patch.eol to ignore EOLs when patching (issue1019)
The intent is to fix many issues involving patching when win32ext is enabled.
With win32ext, the working directory and repository files EOLs are not the same
which means that patches made on a non-win32ext host do not apply cleanly
because of EOLs discrepancies. A theorically correct approach would be
transform either the patched file or the patch content with the
encoding/decoding filters used by win32ext. This solution is tricky to
implement and invasive, instead we prefer to address the win32ext case, by
offering a way to ignore input EOLs when patching and rewriting them when
saving the patched result.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Mon, 15 Jun 2009 00:03:26 +0200 |
parents | 49f34b43cf90 |
children | ea1935e2020a |
rev | line source |
---|---|
5157
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
1 #!/bin/sh |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
2 |
6360
95413879bac9
test-mq-symlinks: skip if symlinks are not supported
Patrick Mezard <pmezard@gmail.com>
parents:
5683
diff
changeset
|
3 "$TESTDIR/hghave" symlink || exit 80 |
95413879bac9
test-mq-symlinks: skip if symlinks are not supported
Patrick Mezard <pmezard@gmail.com>
parents:
5683
diff
changeset
|
4 |
5157
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
5 echo "[extensions]" >> $HGRCPATH |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
6 echo "mq=" >> $HGRCPATH |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
7 |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
8 hg init |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
9 hg qinit |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
10 hg qnew base.patch |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
11 echo a > a |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
12 echo b > b |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
13 hg add a b |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
14 hg qrefresh |
5683
396c7010b0cd
Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5157
diff
changeset
|
15 $TESTDIR/readlink.py a |
5157
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
16 |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
17 hg qnew symlink.patch |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
18 rm a |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
19 ln -s b a |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
20 hg qrefresh --git |
5683
396c7010b0cd
Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5157
diff
changeset
|
21 $TESTDIR/readlink.py a |
5157
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
22 |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
23 hg qpop |
f6c520fd70cf
mq: teach qpop about symlinks
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
24 hg qpush |
5683
396c7010b0cd
Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5157
diff
changeset
|
25 $TESTDIR/readlink.py a |
7517
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
26 |
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
27 hg qnew removesl.patch |
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
28 hg rm a |
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
29 hg qrefresh --git |
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
30 hg qpop |
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
31 hg qpush |
49f34b43cf90
patch: handle git patches that remove symlinks (issue1438)
Brendan Cully <brendan@kublai.com>
parents:
6360
diff
changeset
|
32 hg st -c |