Mercurial > evolve
annotate docs/evolve-faq.rst @ 482:d2531a747ff5
evolve: fold command
First crude version of a fold command
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Thu, 23 Aug 2012 12:51:06 +0200 |
parents | d702f0d26c6a |
children | 7ecd41520dae |
rev | line source |
---|---|
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
1 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
2 --------------------------------------------------------------------- |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
3 Evolve How To |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
4 --------------------------------------------------------------------- |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
5 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
6 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
7 |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
8 Add a changeset: ``commit`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
9 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
10 |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
11 Just use commit as usual. New changesets will be in the `draft` phase. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
12 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
13 Rewrite a changeset: ``amend`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
14 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
15 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
16 A new command ``hg amend`` is added by the extension. It writes a new |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
17 changeset combining working-directory parent changes and parent. It |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
18 will work on any `draft` or `secret` changeset. It will not work on |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
19 `public` changesets. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
20 |
177 | 21 To understand what the result of amend will be I use the two following |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
22 aliases [#]_:: |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
23 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
24 # diff what amend will look likes |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
25 pdiff=diff --rev .^ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
26 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
27 # status what amend will look likes |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
28 pstatus=status --rev .^ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
29 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
30 It takes various options to pick an author, a date and the branch of the |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
31 result... (see ``hg help amend`` for details). |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
32 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
33 This command can even be invoked on changesets with children (provided |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
34 none is public) ! |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
35 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
36 .. note:: the amend command is very similar to mq's ``qrefresh``, a ``refresh`` |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
37 alias for amend is also available. But note that contrary to |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
38 ``qrefresh``, ``amend`` does not exclude changes on file not specified |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
39 on the command line. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
40 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
41 XXX add idank example |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
42 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
43 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
44 .. [#] (added by enable.sh) |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
45 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
46 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
47 |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
48 Move a changeset: ``graft`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
49 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
50 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
51 The graft command introduced in 2.0 allows to "copy changes from other |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
52 branches onto the current branch". |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
53 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
54 The graft command has been altered to allow the creation of an |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
55 obsolete marker indicating both the result cset and its source |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
56 (actually recording changeset movements). |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
57 |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
58 This is achieved using a new flag `-O` (or `old-obsolete`) [#]_. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
59 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
60 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
61 XXX example |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
62 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
63 .. warning:: when using graft --continue after conflict resolution you **MUST** |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
64 pass `-O` or `-o` flag again because they are not saved for now |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
65 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
66 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
67 .. [#] add this `-O` to graft instead of a dedicated command is probably |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
68 abusive. But this was very convenient for experimental purposes. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
69 This will likely change in non experimental release. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
70 |
365
9f6a77ec66cb
evolve: switch the official name for "kill" to prune
Pierre-Yves.David@ens-lyon.org
parents:
357
diff
changeset
|
71 Delete a changeset: ``prune`` |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
72 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
73 |
365
9f6a77ec66cb
evolve: switch the official name for "kill" to prune
Pierre-Yves.David@ens-lyon.org
parents:
357
diff
changeset
|
74 A new ``prune`` command allows removing a changeset. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
75 |
365
9f6a77ec66cb
evolve: switch the official name for "kill" to prune
Pierre-Yves.David@ens-lyon.org
parents:
357
diff
changeset
|
76 Just use ``hg prune <some-rev>``. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
77 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
78 Moving within the history: ``up`` ``gdown`` and ``gup`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
79 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
80 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
81 While working on mutable part of the history you often need to move between |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
82 mutable commit. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
83 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
84 You just need to use standard update to work with evolve. For convenience, you |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
85 can use ``hg gup`` to move to children commit or ``hg gdown`` to move to working |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
86 directory parent commit. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
87 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
88 .. note:: those command only exist for the convenience of getting qpush and qpop |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
89 feeling back. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
90 |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
91 Collapse changesets: ``amend`` |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
92 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
93 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
94 you can use amend -c to collapse multiple changeset in a single one. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
95 |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
96 Getting changes out of a commit |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
97 ------------------------------------------------------------ |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
98 |
347
631cdf4295bc
docs: improve recent updates
Patrick Mezard <patrick@mezard.eu>
parents:
325
diff
changeset
|
99 The ``hg uncommit`` command lets you rewrite the parent commit without |
631cdf4295bc
docs: improve recent updates
Patrick Mezard <patrick@mezard.eu>
parents:
325
diff
changeset
|
100 selected changed files. Target files content is not altered and |
631cdf4295bc
docs: improve recent updates
Patrick Mezard <patrick@mezard.eu>
parents:
325
diff
changeset
|
101 appears again as "modified":: |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
102 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
103 $ hg st |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
104 M babar |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
105 M celestine |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
106 $ hg commit babar celestine |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
107 $ hg st |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
108 $ hg uncommit celestine |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
109 $ hg status |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
110 M celestine |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
111 |
199 | 112 Split a changeset |
180
4379ffd6d293
docs: added a question: split changesets?
Arne Babenhauserheide <bab@draketo.de>
parents:
179
diff
changeset
|
113 ----------------------- |
4379ffd6d293
docs: added a question: split changesets?
Arne Babenhauserheide <bab@draketo.de>
parents:
179
diff
changeset
|
114 |
347
631cdf4295bc
docs: improve recent updates
Patrick Mezard <patrick@mezard.eu>
parents:
325
diff
changeset
|
115 To split on file boundaries, just use ``uncommit`` command. |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
116 |
357
b398e9c2dbd1
doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
325
diff
changeset
|
117 If you need fine-grained split, there is no official command for that yet. |
b398e9c2dbd1
doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
325
diff
changeset
|
118 However, it is easily achieved by manual operation:: |
188
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
119 |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
120 ### you want to split changeset A: 42 |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
121 # update to A parent |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
122 $ hg up 42^ |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
123 # restore content from A |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
124 $ hg revert -r 42 --all |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
125 # partially commit the first part |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
126 $ hg record |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
127 # commit the second part |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
128 $ hg commit |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
129 # informs mercurial of what appened |
198 | 130 # current changeset (.) and previous one (.^) replace A (42) |
365
9f6a77ec66cb
evolve: switch the official name for "kill" to prune
Pierre-Yves.David@ens-lyon.org
parents:
357
diff
changeset
|
131 $ hg prune --new . --new .^ 42 |
188
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
132 |
180
4379ffd6d293
docs: added a question: split changesets?
Arne Babenhauserheide <bab@draketo.de>
parents:
179
diff
changeset
|
133 |
200
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
134 Update my current work in progess after a pull |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
135 ---------------------------------------------- |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
136 |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
137 Whenever you are working on some changesets, it is more likely that a pull |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
138 will, eventually, import new changesets in your tree. |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
139 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
140 And it is likely that you will want your work in progress changsets to be |
200
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
141 rebased on the top of this newly imported subtree. |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
142 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
143 Doing so is only a matter of rebasing. |
200
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
144 |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
145 |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
146 |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
147 Move multiple changesets: ``rebase`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
148 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
149 |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
150 You can still use rebase to move a whole segment of the changeset graph together. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
151 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
152 .. warning:: Beware that rebasing obsolete changesets will result in |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
153 conflicting versions of the changesets. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
154 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
155 Stabilize history: ``stabilize`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
156 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
157 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
158 When you rewrite (amend) a changeset with children without rewriting |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
159 those children you create *unstable* changesets and *suspended |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
160 obsolete* changesets. |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
161 |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
162 When you are finished amending a given changeset, you will want to |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
163 declare it stable, in other words rebase its former descendants on its |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
164 newest version. This is not done automatically to avoid the |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
165 proliferation of useless hidden changesets. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
166 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
167 .. warning:: ``hg stabilize`` have no --continue to use after conflict |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
168 resolution |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
169 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
170 .. warning:: stabilization does not handle deletion yet. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
171 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
172 .. warning:: obsolete currently relies on changesets in secret phase |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
173 to avoid exchanging obsolete and unstable changesets. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
174 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
175 XXX details issue here |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
176 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
177 |
365
9f6a77ec66cb
evolve: switch the official name for "kill" to prune
Pierre-Yves.David@ens-lyon.org
parents:
357
diff
changeset
|
178 Fix my history afterward: ``prune -n`` |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
179 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
180 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
181 Sometimes you need to create an obsolete marker by hand. This may happen when |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
182 upstream has applied some of your patches for example. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
183 |
365
9f6a77ec66cb
evolve: switch the official name for "kill" to prune
Pierre-Yves.David@ens-lyon.org
parents:
357
diff
changeset
|
184 you can use ``hg prune --new <new-changeset> <old-changeset>`` to add obsolete |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
185 marker. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
186 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
187 Export to mq: ``synchronize`` |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
188 ------------------------------------------------------------ |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
189 |
357
b398e9c2dbd1
doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
325
diff
changeset
|
190 Another extension allows to export your changes to mq. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
191 |
199 | 192 View diff from the last amend |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
193 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
194 |
199 | 195 An ``odiff`` alias have been added by ``enable.sh`` |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
196 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
197 :: |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
198 [alias] |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
199 odiff = diff --rev 'limit(precursors(.),1)' --rev . |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
200 |
199 | 201 View obsolete markers |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
202 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
203 |
199 | 204 hgview is the only viewer that support this feature. You need an experimental |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
205 version available here: |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
206 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
207 $ hg clone http://hg-dev.octopoid.net/hgwebdir.cgi/hgview/ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
208 |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
209 You can also use a debug command |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
210 |
441
d702f0d26c6a
obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
367
diff
changeset
|
211 $ hg debugobsolete |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
212 5eb72dbe0cb4 e8db4aa611f6 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
213 c4cbebac3751 4f1c269eab68 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
214 |
199 | 215 |
216 | |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
217 Important Note |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
218 ===================================================================== |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
219 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
220 View change to your file |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
221 ------------------------------------------------------------ |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
222 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
223 Extinct changesets are hidden using the *hidden* feature of mercurial. |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
224 |
347
631cdf4295bc
docs: improve recent updates
Patrick Mezard <patrick@mezard.eu>
parents:
325
diff
changeset
|
225 Only ``hg log``, ``hg glog`` and ``hgview`` support it, other |
631cdf4295bc
docs: improve recent updates
Patrick Mezard <patrick@mezard.eu>
parents:
325
diff
changeset
|
226 graphical viewer do not. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
227 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
228 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
229 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
230 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
231 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
232 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
233 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
234 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
235 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
236 |