Show More
@@ -0,0 +1,114 b'' | |||
|
1 | #!/bin/sh | |
|
2 | ||
|
3 | HGRCPATH=$HGTMP/.hgrc; export HGRCPATH | |
|
4 | echo "[extensions]" >> $HGTMP/.hgrc | |
|
5 | echo "mq=" >> $HGTMP/.hgrc | |
|
6 | ||
|
7 | echo % help | |
|
8 | hg help mq | |
|
9 | ||
|
10 | hg init a | |
|
11 | cd a | |
|
12 | echo a > a | |
|
13 | mkdir b | |
|
14 | echo z > b/z | |
|
15 | hg ci -Ama | |
|
16 | ||
|
17 | echo % qinit | |
|
18 | ||
|
19 | hg qinit | |
|
20 | ||
|
21 | cd .. | |
|
22 | hg init b | |
|
23 | ||
|
24 | echo % -R qinit | |
|
25 | ||
|
26 | hg -R b qinit | |
|
27 | ||
|
28 | hg init c | |
|
29 | ||
|
30 | echo % qinit -c | |
|
31 | ||
|
32 | hg --cwd c qinit -c | |
|
33 | hg -R c/.hg/patches st | |
|
34 | ||
|
35 | echo % qnew implies add | |
|
36 | ||
|
37 | hg -R c qnew test.patch | |
|
38 | hg -R c/.hg/patches st | |
|
39 | ||
|
40 | cd a | |
|
41 | ||
|
42 | echo % qnew -m | |
|
43 | ||
|
44 | hg qnew -m 'foo bar' test.patch | |
|
45 | cat .hg/patches/test.patch | |
|
46 | ||
|
47 | echo % qrefresh | |
|
48 | ||
|
49 | echo a >> a | |
|
50 | hg qrefresh | |
|
51 | sed -e "s/\(^diff -r \)\([a-f0-9]* \)/\1 x/" \ | |
|
52 | -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \ | |
|
53 | -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" .hg/patches/test.patch | |
|
54 | ||
|
55 | echo % qpop | |
|
56 | ||
|
57 | hg qpop | |
|
58 | ||
|
59 | echo % qpush | |
|
60 | ||
|
61 | hg qpush | |
|
62 | ||
|
63 | cd .. | |
|
64 | ||
|
65 | echo % pop/push outside repo | |
|
66 | ||
|
67 | hg -R a qpop | |
|
68 | hg -R a qpush | |
|
69 | ||
|
70 | cd a | |
|
71 | hg qnew test2.patch | |
|
72 | ||
|
73 | echo % qrefresh in subdir | |
|
74 | ||
|
75 | cd b | |
|
76 | echo a > a | |
|
77 | hg add a | |
|
78 | hg qrefresh | |
|
79 | ||
|
80 | echo % pop/push -a in subdir | |
|
81 | ||
|
82 | hg qpop -a | |
|
83 | hg --traceback qpush -a | |
|
84 | ||
|
85 | echo % qseries | |
|
86 | hg qseries | |
|
87 | ||
|
88 | echo % qapplied | |
|
89 | hg qapplied | |
|
90 | ||
|
91 | echo % qtop | |
|
92 | hg qtop | |
|
93 | ||
|
94 | echo % qprev | |
|
95 | hg qprev | |
|
96 | ||
|
97 | echo % qnext | |
|
98 | hg qnext | |
|
99 | ||
|
100 | echo % pop, qnext, qprev, qapplied | |
|
101 | hg qpop | |
|
102 | hg qnext | |
|
103 | hg qprev | |
|
104 | hg qapplied | |
|
105 | ||
|
106 | echo % qunapplied | |
|
107 | hg qunapplied | |
|
108 | ||
|
109 | echo % strip | |
|
110 | cd ../../b | |
|
111 | echo x>x | |
|
112 | hg ci -Ama | |
|
113 | hg strip tip 2>&1 | sed 's/\(saving bundle to \).*/\1/' | |
|
114 | hg unbundle .hg/strip-backup/* |
@@ -0,0 +1,111 b'' | |||
|
1 | % help | |
|
2 | mq extension - patch management and development | |
|
3 | ||
|
4 | This extension lets you work with a stack of patches in a Mercurial | |
|
5 | repository. It manages two stacks of patches - all known patches, and | |
|
6 | applied patches (subset of known patches). | |
|
7 | ||
|
8 | Known patches are represented as patch files in the .hg/patches | |
|
9 | directory. Applied patches are both patch files and changesets. | |
|
10 | ||
|
11 | Common tasks (use "hg help command" for more details): | |
|
12 | ||
|
13 | prepare repository to work with patches qinit | |
|
14 | create new patch qnew | |
|
15 | import existing patch qimport | |
|
16 | ||
|
17 | print patch series qseries | |
|
18 | print applied patches qapplied | |
|
19 | print name of top applied patch qtop | |
|
20 | ||
|
21 | add known patch to applied stack qpush | |
|
22 | remove patch from applied stack qpop | |
|
23 | refresh contents of top applied patch qrefresh | |
|
24 | ||
|
25 | list of commands (use "hg help -v mq" to show aliases and global options): | |
|
26 | ||
|
27 | qapplied print the patches already applied | |
|
28 | qclone clone main and patch repository at same time | |
|
29 | qcommit commit changes in the queue repository | |
|
30 | qdelete remove a patch from the series file | |
|
31 | qdiff diff of the current patch | |
|
32 | qimport import a patch | |
|
33 | qinit init a new queue repository | |
|
34 | qnew create a new patch | |
|
35 | qnext print the name of the next patch | |
|
36 | qpop pop the current patch off the stack | |
|
37 | qprev print the name of the previous patch | |
|
38 | qpush push the next patch onto the stack | |
|
39 | qrefresh update the current patch | |
|
40 | qrestore restore the queue state saved by a rev | |
|
41 | qsave save current queue state | |
|
42 | qseries print the entire series file | |
|
43 | qtop print the name of the current patch | |
|
44 | qunapplied print the patches not yet applied | |
|
45 | qversion print the version number | |
|
46 | strip strip a revision and all later revs on the same branch | |
|
47 | adding a | |
|
48 | adding b/z | |
|
49 | % qinit | |
|
50 | % -R qinit | |
|
51 | % qinit -c | |
|
52 | A .hgignore | |
|
53 | A series | |
|
54 | % qnew implies add | |
|
55 | A .hgignore | |
|
56 | A series | |
|
57 | A test.patch | |
|
58 | % qnew -m | |
|
59 | foo bar | |
|
60 | % qrefresh | |
|
61 | foo bar | |
|
62 | ||
|
63 | diff -r xa | |
|
64 | --- a/a | |
|
65 | +++ b/a | |
|
66 | @@ -1,1 +1,2 @@ a | |
|
67 | a | |
|
68 | +a | |
|
69 | % qpop | |
|
70 | Patch queue now empty | |
|
71 | % qpush | |
|
72 | applying test.patch | |
|
73 | Now at: test.patch | |
|
74 | % pop/push outside repo | |
|
75 | Patch queue now empty | |
|
76 | applying test.patch | |
|
77 | Now at: test.patch | |
|
78 | % qrefresh in subdir | |
|
79 | % pop/push -a in subdir | |
|
80 | Patch queue now empty | |
|
81 | applying test.patch | |
|
82 | applying test2.patch | |
|
83 | Now at: test2.patch | |
|
84 | % qseries | |
|
85 | test.patch | |
|
86 | test2.patch | |
|
87 | % qapplied | |
|
88 | test.patch | |
|
89 | test2.patch | |
|
90 | % qtop | |
|
91 | test2.patch | |
|
92 | % qprev | |
|
93 | test.patch | |
|
94 | % qnext | |
|
95 | All patches applied | |
|
96 | % pop, qnext, qprev, qapplied | |
|
97 | Now at: test.patch | |
|
98 | test2.patch | |
|
99 | Only one patch applied | |
|
100 | test.patch | |
|
101 | % qunapplied | |
|
102 | test2.patch | |
|
103 | % strip | |
|
104 | adding x | |
|
105 | 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
|
106 | saving bundle to | |
|
107 | adding changesets | |
|
108 | adding manifests | |
|
109 | adding file changes | |
|
110 | added 1 changesets with 1 changes to 1 files | |
|
111 | (run 'hg update' to get a working copy) |
General Comments 0
You need to be logged in to leave comments.
Login now