equal
deleted
inserted
replaced
1 #!/bin/sh |
|
2 |
|
3 echo "[extensions]" >> $HGRCPATH |
|
4 echo "mq=" >> $HGRCPATH |
|
5 echo "[mq]" >> $HGRCPATH |
|
6 echo "git=keep" >> $HGRCPATH |
|
7 |
|
8 filterdiff() |
|
9 { |
|
10 grep -v diff | \ |
|
11 sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \ |
|
12 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" |
|
13 } |
|
14 |
|
15 filterpatch() |
|
16 { |
|
17 sed -e "s/\(# Parent \).*/\1/" |
|
18 } |
|
19 |
|
20 echo '% init' |
|
21 hg init repo |
|
22 cd repo |
|
23 echo a > a |
|
24 hg ci -Am adda |
|
25 echo a >> a |
|
26 hg qnew -f p1 |
|
27 echo b >> a |
|
28 hg qnew -f p2 |
|
29 echo c >> a |
|
30 hg qnew -f p3 |
|
31 echo '% fold in the middle of the queue' |
|
32 hg qpop p1 |
|
33 hg qdiff | filterdiff |
|
34 hg qfold p2 |
|
35 grep git .hg/patches/p1 && echo 'git patch found!' |
|
36 hg qser |
|
37 hg qdiff | filterdiff |
|
38 echo '% fold with local changes' |
|
39 echo d >> a |
|
40 hg qfold p3 |
|
41 hg diff -c . | filterdiff |
|
42 hg revert -a --no-backup |
|
43 |
|
44 echo '% fold git patch into a regular patch, expect git patch' |
|
45 echo a >> a |
|
46 hg qnew -f regular |
|
47 hg cp a aa |
|
48 hg qnew --git -f git |
|
49 hg qpop |
|
50 hg qfold git |
|
51 cat .hg/patches/regular | filterpatch |
|
52 hg qpop |
|
53 hg qdel regular |
|
54 |
|
55 echo '% fold regular patch into a git patch, expect git patch' |
|
56 hg cp a aa |
|
57 hg qnew --git -f git |
|
58 echo b >> aa |
|
59 hg qnew -f regular |
|
60 hg qpop |
|
61 hg qfold regular |
|
62 cat .hg/patches/git | filterpatch |
|
63 |
|
64 cd .. |
|
65 |
|
66 |
|