Mercurial > evolve
annotate docs/evolve-faq.rst @ 363:5280e7ce026d stable
doc: big update of terms and summary of the concept
This is intended to be sent to the mailing list for discussion.
author | Pierre-Yves.David@ens-lyon.org |
---|---|
date | Sun, 15 Jul 2012 12:49:25 +0200 |
parents | b398e9c2dbd1 |
children | 9f6a77ec66cb |
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 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
71 Delete a changeset: ``kill`` |
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 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
74 A new ``kill`` 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 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
76 Just use ``hg kill <some-rev>``. |
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 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
99 the ``hg uncommit`` commands allow you to rewrite the current commit to not |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
100 include change for some file. The content of target files are not altered on |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
101 disk and back as "modified":: |
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 |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
115 I you just want to split whole file, you can just use the ``uncommit`` command. |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
116 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
117 |
357
b398e9c2dbd1
doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
325
diff
changeset
|
118 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
|
119 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
|
120 |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
121 ### you want to split changeset A: 42 |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
122 # update to A parent |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
123 $ hg up 42^ |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
124 # restore content from A |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
125 $ hg revert -r 42 --all |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
126 # partially commit the first part |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
127 $ hg record |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
128 # commit the second part |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
129 $ hg commit |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
130 # informs mercurial of what appened |
198 | 131 # current changeset (.) and previous one (.^) replace A (42) |
188
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
132 $ hg kill --new . --new .^ 42 |
627dde054cd0
add split example
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
180
diff
changeset
|
133 |
180
4379ffd6d293
docs: added a question: split changesets?
Arne Babenhauserheide <bab@draketo.de>
parents:
179
diff
changeset
|
134 |
200
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
135 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
|
136 ---------------------------------------------- |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
137 |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
138 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
|
139 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
|
140 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
141 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
|
142 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
|
143 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
144 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
|
145 |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
146 |
4df233db5d42
FAQ: add en entry about rebasing after a pull
David Douard <david.douard@logilab.fr>
parents:
199
diff
changeset
|
147 |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
148 Move multiple changesets: ``rebase`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
149 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
150 |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
151 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
|
152 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
153 .. 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
|
154 conflicting versions of the changesets. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
155 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
156 Stabilize history: ``stabilize`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
157 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
158 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
159 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
|
160 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
|
161 obsolete* changesets. |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
162 |
179
bc6460f61c64
docs: fix typos in the FAQ
Arne Babenhauserheide <bab@draketo.de>
parents:
177
diff
changeset
|
163 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
|
164 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
|
165 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
|
166 proliferation of useless hidden changesets. |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
167 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
168 .. 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
|
169 resolution |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
170 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
171 .. 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
|
172 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
173 .. 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
|
174 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
|
175 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
176 XXX details issue here |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
177 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
178 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
179 Fix my history afterward: ``kill -n`` |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
180 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
181 |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
182 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
|
183 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
|
184 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
185 you can use ``hg kill --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
|
186 marker. |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
187 |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
188 Export to mq: ``synchronize`` |
169
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
189 ------------------------------------------------------------ |
06c942f9bac6
auc improvement of the doc
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
161
diff
changeset
|
190 |
357
b398e9c2dbd1
doc: English proofreading
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
325
diff
changeset
|
191 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
|
192 |
199 | 193 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
|
194 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
195 |
199 | 196 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
|
197 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
198 :: |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
199 [alias] |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
200 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
|
201 |
199 | 202 View obsolete markers |
161
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
203 ------------------------------------------------------------ |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
204 |
199 | 205 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
|
206 version available here: |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
207 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
208 $ 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
|
209 |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
210 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
|
211 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
212 $ hg debugsuccessors |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
213 5eb72dbe0cb4 e8db4aa611f6 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
214 c4cbebac3751 4f1c269eab68 |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
215 |
199 | 216 |
217 | |
228
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
218 Important Note |
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 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
221 View change to your file |
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 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
224 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
|
225 |
325
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
226 Only ``hg log`` and ``hgview`` support it. ``hg glog`` Only support that since |
43a686709ded
doc: readme and uncommit reference
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
228
diff
changeset
|
227 2.2. Other visual viewer don't. |
161
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 |
4e3f25ba5401
More doc and index with sphynx
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff
changeset
|
233 |
228
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 |
5a17c0d41a00
proof-read documentation and docstrings
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
227
diff
changeset
|
237 |