Show More
@@ -1624,14 +1624,16 b' class queue:' | |||||
1624 | def delete(ui, repo, *patches, **opts): |
|
1624 | def delete(ui, repo, *patches, **opts): | |
1625 | """remove patches from queue |
|
1625 | """remove patches from queue | |
1626 |
|
1626 | |||
1627 | The patches must not be applied, unless they are arguments to |
|
1627 | The patches must not be applied, unless they are arguments to the | |
1628 |
|
|
1628 | --rev parameter. At least one patch or revision is required. | |
1629 |
|
1629 | |||
1630 | With --rev, mq will stop managing the named revisions (converting |
|
1630 | With --rev, mq will stop managing the named revisions (converting | |
1631 |
them to regular mercurial changesets). The qfinish command should |
|
1631 | them to regular mercurial changesets). The qfinish command should | |
1632 |
used as an alternative for qdel -r, as the latter option is |
|
1632 | be used as an alternative for qdel -r, as the latter option is | |
|
1633 | deprecated. | |||
1633 |
|
1634 | |||
1634 |
With --keep, the patch files are preserved in the patch |
|
1635 | With --keep, the patch files are preserved in the patch | |
|
1636 | directory.""" | |||
1635 | q = repo.mq |
|
1637 | q = repo.mq | |
1636 | q.delete(repo, patches, opts) |
|
1638 | q.delete(repo, patches, opts) | |
1637 | q.save_dirty() |
|
1639 | q.save_dirty() | |
@@ -1662,23 +1664,25 b' def unapplied(ui, repo, patch=None, **op' | |||||
1662 | def qimport(ui, repo, *filename, **opts): |
|
1664 | def qimport(ui, repo, *filename, **opts): | |
1663 | """import a patch |
|
1665 | """import a patch | |
1664 |
|
1666 | |||
1665 |
The patch is inserted into the series after the last applied |
|
1667 | The patch is inserted into the series after the last applied | |
1666 | If no patches have been applied, qimport prepends the patch |
|
1668 | patch. If no patches have been applied, qimport prepends the patch | |
1667 | to the series. |
|
1669 | to the series. | |
1668 |
|
1670 | |||
1669 | The patch will have the same name as its source file unless you |
|
1671 | The patch will have the same name as its source file unless you | |
1670 | give it a new one with --name. |
|
1672 | give it a new one with --name. | |
1671 |
|
1673 | |||
1672 | You can register an existing patch inside the patch directory |
|
1674 | You can register an existing patch inside the patch directory with | |
1673 |
|
|
1675 | the --existing flag. | |
1674 |
|
1676 | |||
1675 |
With --force, an existing patch of the same name will be |
|
1677 | With --force, an existing patch of the same name will be | |
|
1678 | overwritten. | |||
1676 |
|
1679 | |||
1677 | An existing changeset may be placed under mq control with --rev |
|
1680 | An existing changeset may be placed under mq control with --rev | |
1678 | (e.g. qimport --rev tip -n patch will place tip under mq control). |
|
1681 | (e.g. qimport --rev tip -n patch will place tip under mq control). | |
1679 | With --git, patches imported with --rev will use the git diff |
|
1682 | With --git, patches imported with --rev will use the git diff | |
1680 | format. See the diffs help topic for information on why this is |
|
1683 | format. See the diffs help topic for information on why this is | |
1681 |
important for preserving rename/copy information and permission |
|
1684 | important for preserving rename/copy information and permission | |
|
1685 | changes. | |||
1682 | """ |
|
1686 | """ | |
1683 | q = repo.mq |
|
1687 | q = repo.mq | |
1684 | q.qimport(repo, filename, patchname=opts['name'], |
|
1688 | q.qimport(repo, filename, patchname=opts['name'], | |
@@ -1691,10 +1695,10 b' def init(ui, repo, **opts):' | |||||
1691 | """init a new queue repository |
|
1695 | """init a new queue repository | |
1692 |
|
1696 | |||
1693 | The queue repository is unversioned by default. If -c is |
|
1697 | The queue repository is unversioned by default. If -c is | |
1694 | specified, qinit will create a separate nested repository |
|
1698 | specified, qinit will create a separate nested repository for | |
1695 |
|
|
1699 | patches (qinit -c may also be run later to convert an unversioned | |
1696 |
|
|
1700 | patch repository into a versioned one). You can use qcommit to | |
1697 |
|
|
1701 | commit changes to this queue repository.""" | |
1698 | q = repo.mq |
|
1702 | q = repo.mq | |
1699 | r = q.init(repo, create=opts['create_repo']) |
|
1703 | r = q.init(repo, create=opts['create_repo']) | |
1700 | q.save_dirty() |
|
1704 | q.save_dirty() | |
@@ -1834,18 +1838,19 b' def setupheaderopts(ui, opts):' | |||||
1834 | def new(ui, repo, patch, *args, **opts): |
|
1838 | def new(ui, repo, patch, *args, **opts): | |
1835 | """create a new patch |
|
1839 | """create a new patch | |
1836 |
|
1840 | |||
1837 |
qnew creates a new patch on top of the currently-applied patch (if |
|
1841 | qnew creates a new patch on top of the currently-applied patch (if | |
1838 |
It will refuse to run if there are any outstanding changes |
|
1842 | any). It will refuse to run if there are any outstanding changes | |
1839 |
specified, in which case the patch will be |
|
1843 | unless -f is specified, in which case the patch will be | |
1840 | may also use -I, -X, and/or a list of files after the patch name to add |
|
1844 | initialized with them. You may also use -I, -X, and/or a list of | |
1841 | only changes to matching files to the new patch, leaving the rest as |
|
1845 | files after the patch name to add only changes to matching files | |
1842 | uncommitted modifications. |
|
1846 | to the new patch, leaving the rest as uncommitted modifications. | |
1843 |
|
1847 | |||
1844 | -u and -d can be used to set the (given) user and date, respectively. |
|
1848 | -u and -d can be used to set the (given) user and date, respectively. | |
1845 | -U and -D set user to current user and date to current date. |
|
1849 | -U and -D set user to current user and date to current date. | |
1846 |
|
1850 | |||
1847 |
-e, -m or -l set the patch header as well as the commit message. |
|
1851 | -e, -m or -l set the patch header as well as the commit message. | |
1848 |
is specified, the header is empty and the commit message |
|
1852 | If none is specified, the header is empty and the commit message | |
|
1853 | is '[mq]: PATCH'. | |||
1849 |
|
1854 | |||
1850 | Use the --git option to keep the patch in the git extended diff |
|
1855 | Use the --git option to keep the patch in the git extended diff | |
1851 | format. Read the diffs help topic for more information on why this |
|
1856 | format. Read the diffs help topic for more information on why this | |
@@ -1868,16 +1873,17 b' def new(ui, repo, patch, *args, **opts):' | |||||
1868 | def refresh(ui, repo, *pats, **opts): |
|
1873 | def refresh(ui, repo, *pats, **opts): | |
1869 | """update the current patch |
|
1874 | """update the current patch | |
1870 |
|
1875 | |||
1871 |
If any file patterns are provided, the refreshed patch will |
|
1876 | If any file patterns are provided, the refreshed patch will | |
1872 |
the modifications that match those patterns; the |
|
1877 | contain only the modifications that match those patterns; the | |
1873 | will remain in the working directory. |
|
1878 | remaining modifications will remain in the working directory. | |
1874 |
|
1879 | |||
1875 |
If --short is specified, files currently included in the patch |
|
1880 | If --short is specified, files currently included in the patch | |
1876 | be refreshed just like matched files and remain in the patch. |
|
1881 | will be refreshed just like matched files and remain in the patch. | |
1877 |
|
1882 | |||
1878 |
hg add/remove/copy/rename work as usual, though you might want to |
|
1883 | hg add/remove/copy/rename work as usual, though you might want to | |
1879 |
git-style patches (--git or [diff] git=1) to track copies and |
|
1884 | use git-style patches (--git or [diff] git=1) to track copies and | |
1880 |
See the diffs help topic for more information on the git |
|
1885 | renames. See the diffs help topic for more information on the git | |
|
1886 | diff format. | |||
1881 | """ |
|
1887 | """ | |
1882 | q = repo.mq |
|
1888 | q = repo.mq | |
1883 | message = cmdutil.logmessage(opts) |
|
1889 | message = cmdutil.logmessage(opts) | |
@@ -1898,13 +1904,15 b' def refresh(ui, repo, *pats, **opts):' | |||||
1898 | def diff(ui, repo, *pats, **opts): |
|
1904 | def diff(ui, repo, *pats, **opts): | |
1899 | """diff of the current patch and subsequent modifications |
|
1905 | """diff of the current patch and subsequent modifications | |
1900 |
|
1906 | |||
1901 |
Shows a diff which includes the current patch as well as any |
|
1907 | Shows a diff which includes the current patch as well as any | |
1902 |
have been made in the working directory since the |
|
1908 | changes which have been made in the working directory since the | |
1903 |
showing what the current patch would become |
|
1909 | last refresh (thus showing what the current patch would become | |
|
1910 | after a qrefresh). | |||
1904 |
|
1911 | |||
1905 |
Use 'hg diff' if you only want to see the changes made since the |
|
1912 | Use 'hg diff' if you only want to see the changes made since the | |
1906 |
qrefresh, or 'hg export qtip' if you want to see changes made |
|
1913 | last qrefresh, or 'hg export qtip' if you want to see changes made | |
1907 |
current patch without including changes made since the |
|
1914 | by the current patch without including changes made since the | |
|
1915 | qrefresh. | |||
1908 | """ |
|
1916 | """ | |
1909 | repo.mq.diff(repo, pats, opts) |
|
1917 | repo.mq.diff(repo, pats, opts) | |
1910 | return 0 |
|
1918 | return 0 | |
@@ -1915,12 +1923,12 b' def fold(ui, repo, *files, **opts):' | |||||
1915 | Patches must not yet be applied. Each patch will be successively |
|
1923 | Patches must not yet be applied. Each patch will be successively | |
1916 | applied to the current patch in the order given. If all the |
|
1924 | applied to the current patch in the order given. If all the | |
1917 | patches apply successfully, the current patch will be refreshed |
|
1925 | patches apply successfully, the current patch will be refreshed | |
1918 | with the new cumulative patch, and the folded patches will |
|
1926 | with the new cumulative patch, and the folded patches will be | |
1919 |
|
|
1927 | deleted. With -k/--keep, the folded patch files will not be | |
1920 |
|
|
1928 | removed afterwards. | |
1921 |
|
1929 | |||
1922 | The header for each folded patch will be concatenated with |
|
1930 | The header for each folded patch will be concatenated with the | |
1923 |
|
|
1931 | current patch header, separated by a line of '* * *'.""" | |
1924 |
|
1932 | |||
1925 | q = repo.mq |
|
1933 | q = repo.mq | |
1926 |
|
1934 | |||
@@ -2069,7 +2077,8 b' def savename(path):' | |||||
2069 | def push(ui, repo, patch=None, **opts): |
|
2077 | def push(ui, repo, patch=None, **opts): | |
2070 | """push the next patch onto the stack |
|
2078 | """push the next patch onto the stack | |
2071 |
|
2079 | |||
2072 |
When --force is applied, all local changes in patched files will |
|
2080 | When --force is applied, all local changes in patched files will | |
|
2081 | be lost. | |||
2073 | """ |
|
2082 | """ | |
2074 | q = repo.mq |
|
2083 | q = repo.mq | |
2075 | mergeq = None |
|
2084 | mergeq = None | |
@@ -2091,8 +2100,9 b' def push(ui, repo, patch=None, **opts):' | |||||
2091 | def pop(ui, repo, patch=None, **opts): |
|
2100 | def pop(ui, repo, patch=None, **opts): | |
2092 | """pop the current patch off the stack |
|
2101 | """pop the current patch off the stack | |
2093 |
|
2102 | |||
2094 |
By default, pops off the top of the patch stack. If given a patch |
|
2103 | By default, pops off the top of the patch stack. If given a patch | |
2095 |
keeps popping off patches until the named patch is at the |
|
2104 | name, keeps popping off patches until the named patch is at the | |
|
2105 | top of the stack. | |||
2096 | """ |
|
2106 | """ | |
2097 | localupdate = True |
|
2107 | localupdate = True | |
2098 | if opts['name']: |
|
2108 | if opts['name']: | |
@@ -2208,8 +2218,9 b' def save(ui, repo, **opts):' | |||||
2208 | def strip(ui, repo, rev, **opts): |
|
2218 | def strip(ui, repo, rev, **opts): | |
2209 | """strip a revision and all its descendants from the repository |
|
2219 | """strip a revision and all its descendants from the repository | |
2210 |
|
2220 | |||
2211 |
If one of the working dir's parent revisions is stripped, the |
|
2221 | If one of the working dir's parent revisions is stripped, the | |
2212 |
directory will be updated to the parent of the stripped |
|
2222 | working directory will be updated to the parent of the stripped | |
|
2223 | revision. | |||
2213 | """ |
|
2224 | """ | |
2214 | backup = 'all' |
|
2225 | backup = 'all' | |
2215 | if opts['backup']: |
|
2226 | if opts['backup']: | |
@@ -2235,33 +2246,34 b' def select(ui, repo, *args, **opts):' | |||||
2235 | '''set or print guarded patches to push |
|
2246 | '''set or print guarded patches to push | |
2236 |
|
2247 | |||
2237 | Use the qguard command to set or print guards on patch, then use |
|
2248 | Use the qguard command to set or print guards on patch, then use | |
2238 |
qselect to tell mq which guards to use. A patch will be pushed if |
|
2249 | qselect to tell mq which guards to use. A patch will be pushed if | |
2239 |
has no guards or any positive guards match the currently |
|
2250 | it has no guards or any positive guards match the currently | |
2240 |
but will not be pushed if any negative guards |
|
2251 | selected guard, but will not be pushed if any negative guards | |
2241 | For example: |
|
2252 | match the current guard. For example: | |
2242 |
|
2253 | |||
2243 | qguard foo.patch -stable (negative guard) |
|
2254 | qguard foo.patch -stable (negative guard) | |
2244 | qguard bar.patch +stable (positive guard) |
|
2255 | qguard bar.patch +stable (positive guard) | |
2245 | qselect stable |
|
2256 | qselect stable | |
2246 |
|
2257 | |||
2247 | This activates the "stable" guard. mq will skip foo.patch (because |
|
2258 | This activates the "stable" guard. mq will skip foo.patch (because | |
2248 | it has a negative match) but push bar.patch (because it |
|
2259 | it has a negative match) but push bar.patch (because it has a | |
2249 |
|
|
2260 | positive match). | |
2250 |
|
2261 | |||
2251 | With no arguments, prints the currently active guards. |
|
2262 | With no arguments, prints the currently active guards. | |
2252 | With one argument, sets the active guard. |
|
2263 | With one argument, sets the active guard. | |
2253 |
|
2264 | |||
2254 | Use -n/--none to deactivate guards (no other arguments needed). |
|
2265 | Use -n/--none to deactivate guards (no other arguments needed). | |
2255 |
When no guards are active, patches with positive guards are |
|
2266 | When no guards are active, patches with positive guards are | |
2256 | and patches with negative guards are pushed. |
|
2267 | skipped and patches with negative guards are pushed. | |
2257 |
|
2268 | |||
2258 | qselect can change the guards on applied patches. It does not pop |
|
2269 | qselect can change the guards on applied patches. It does not pop | |
2259 |
guarded patches by default. Use --pop to pop back to the last |
|
2270 | guarded patches by default. Use --pop to pop back to the last | |
2260 |
patch that is not guarded. Use --reapply (which implies |
|
2271 | applied patch that is not guarded. Use --reapply (which implies | |
2261 |
back to the current patch afterwards, but skip |
|
2272 | --pop) to push back to the current patch afterwards, but skip | |
|
2273 | guarded patches. | |||
2262 |
|
2274 | |||
2263 |
Use -s/--series to print a list of all guards in the series file |
|
2275 | Use -s/--series to print a list of all guards in the series file | |
2264 | other arguments needed). Use -v for more information.''' |
|
2276 | (no other arguments needed). Use -v for more information.''' | |
2265 |
|
2277 | |||
2266 | q = repo.mq |
|
2278 | q = repo.mq | |
2267 | guards = q.active() |
|
2279 | guards = q.active() | |
@@ -2336,16 +2348,18 b' def select(ui, repo, *args, **opts):' | |||||
2336 | def finish(ui, repo, *revrange, **opts): |
|
2348 | def finish(ui, repo, *revrange, **opts): | |
2337 | """move applied patches into repository history |
|
2349 | """move applied patches into repository history | |
2338 |
|
2350 | |||
2339 |
Finishes the specified revisions (corresponding to applied |
|
2351 | Finishes the specified revisions (corresponding to applied | |
2340 |
moving them out of mq control into regular repository |
|
2352 | patches) by moving them out of mq control into regular repository | |
|
2353 | history. | |||
2341 |
|
2354 | |||
2342 | Accepts a revision range or the --applied option. If --applied is |
|
2355 | Accepts a revision range or the --applied option. If --applied is | |
2343 | specified, all applied mq revisions are removed from mq control. |
|
2356 | specified, all applied mq revisions are removed from mq control. | |
2344 | Otherwise, the given revisions must be at the base of the stack of |
|
2357 | Otherwise, the given revisions must be at the base of the stack of | |
2345 | applied patches. |
|
2358 | applied patches. | |
2346 |
|
2359 | |||
2347 |
This can be especially useful if your changes have been applied to |
|
2360 | This can be especially useful if your changes have been applied to | |
2348 |
upstream repository, or if you are about to push your changes |
|
2361 | an upstream repository, or if you are about to push your changes | |
|
2362 | to upstream. | |||
2349 | """ |
|
2363 | """ | |
2350 | if not opts['applied'] and not revrange: |
|
2364 | if not opts['applied'] and not revrange: | |
2351 | raise util.Abort(_('no revisions specified')) |
|
2365 | raise util.Abort(_('no revisions specified')) |
General Comments 0
You need to be logged in to leave comments.
Login now