##// END OF EJS Templates
glossary: add entry for "Bookmark"
Martin Geisler -
r14630:f536151d default
parent child Browse files
Show More
@@ -1,374 +1,386
1 Ancestor
1 Ancestor
2 Any changeset that can be reached by an unbroken chain of parent
2 Any changeset that can be reached by an unbroken chain of parent
3 changesets from a given changeset. More precisely, the ancestors
3 changesets from a given changeset. More precisely, the ancestors
4 of a changeset can be defined by two properties: a parent of a
4 of a changeset can be defined by two properties: a parent of a
5 changeset is an ancestor, and a parent of an ancestor is an
5 changeset is an ancestor, and a parent of an ancestor is an
6 ancestor. See also: 'Descendant'.
6 ancestor. See also: 'Descendant'.
7
7
8 Bookmark
9 Bookmarks are pointers to certain commits that move when
10 committing. They are similar to tags in that it is possible to use
11 bookmark names in all places where Mercurial expects a changeset
12 ID, e.g., with :hg:`update`. Unlike tags, bookmarks move along
13 when you make a commit.
14
15 Bookmarks can be renamed, copied and deleted. Bookmarks are local,
16 unless they are explicitly pushed or pulled between repositories.
17 Pushing and pulling bookmarks allow you to collaborate with others
18 on a branch without creating a named branch.
19
8 Branch
20 Branch
9 (Noun) A child changeset that has been created from a parent that
21 (Noun) A child changeset that has been created from a parent that
10 is not a head. These are known as topological branches, see
22 is not a head. These are known as topological branches, see
11 'Branch, topological'. If a topological branch is named, it becomes
23 'Branch, topological'. If a topological branch is named, it becomes
12 a named branch. If a topological branch is not named, it becomes
24 a named branch. If a topological branch is not named, it becomes
13 an anonymous branch. See 'Branch, anonymous' and 'Branch, named'.
25 an anonymous branch. See 'Branch, anonymous' and 'Branch, named'.
14
26
15 Branches may be created when changes are pulled from or pushed to
27 Branches may be created when changes are pulled from or pushed to
16 a remote repository, since new heads may be created by these
28 a remote repository, since new heads may be created by these
17 operations. Note that the term branch can also be used informally
29 operations. Note that the term branch can also be used informally
18 to describe a development process in which certain development is
30 to describe a development process in which certain development is
19 done independently of other development. This is sometimes done
31 done independently of other development. This is sometimes done
20 explicitly with a named branch, but it can also be done locally,
32 explicitly with a named branch, but it can also be done locally,
21 using bookmarks or clones and anonymous branches.
33 using bookmarks or clones and anonymous branches.
22
34
23 Example: "The experimental branch".
35 Example: "The experimental branch".
24
36
25 (Verb) The action of creating a child changeset which results in
37 (Verb) The action of creating a child changeset which results in
26 its parent having more than one child.
38 its parent having more than one child.
27
39
28 Example: "I'm going to branch at X".
40 Example: "I'm going to branch at X".
29
41
30 Branch, anonymous
42 Branch, anonymous
31 Every time a new child changeset is created from a parent that is not
43 Every time a new child changeset is created from a parent that is not
32 a head and the name of the branch is not changed, a new anonymous
44 a head and the name of the branch is not changed, a new anonymous
33 branch is created.
45 branch is created.
34
46
35 Branch, closed
47 Branch, closed
36 A named branch whose branch heads have all been closed.
48 A named branch whose branch heads have all been closed.
37
49
38 Branch, default
50 Branch, default
39 The branch assigned to a changeset when no name has previously been
51 The branch assigned to a changeset when no name has previously been
40 assigned.
52 assigned.
41
53
42 Branch head
54 Branch head
43 See 'Head, branch'.
55 See 'Head, branch'.
44
56
45 Branch, inactive
57 Branch, inactive
46 If a named branch has no topological heads, it is considered to be
58 If a named branch has no topological heads, it is considered to be
47 inactive. As an example, a feature branch becomes inactive when it
59 inactive. As an example, a feature branch becomes inactive when it
48 is merged into the default branch. The :hg:`branches` command
60 is merged into the default branch. The :hg:`branches` command
49 shows inactive branches by default, though they can be hidden with
61 shows inactive branches by default, though they can be hidden with
50 :hg:`branches --active`.
62 :hg:`branches --active`.
51
63
52 NOTE: this concept is deprecated because it is too implicit.
64 NOTE: this concept is deprecated because it is too implicit.
53 Branches should now be explicitly closed using :hg:`commit
65 Branches should now be explicitly closed using :hg:`commit
54 --close-branch` when they are no longer needed.
66 --close-branch` when they are no longer needed.
55
67
56 Branch, named
68 Branch, named
57 A collection of changesets which have the same branch name. By
69 A collection of changesets which have the same branch name. By
58 default, children of a changeset in a named branch belong to the
70 default, children of a changeset in a named branch belong to the
59 same named branch. A child can be explicitly assigned to a
71 same named branch. A child can be explicitly assigned to a
60 different branch. See :hg:`help branch`, :hg:`help branches` and
72 different branch. See :hg:`help branch`, :hg:`help branches` and
61 :hg:`commit --close-branch` for more information on managing
73 :hg:`commit --close-branch` for more information on managing
62 branches.
74 branches.
63
75
64 Named branches can be thought of as a kind of namespace, dividing
76 Named branches can be thought of as a kind of namespace, dividing
65 the collection of changesets that comprise the repository into a
77 the collection of changesets that comprise the repository into a
66 collection of disjoint subsets. A named branch is not necessarily
78 collection of disjoint subsets. A named branch is not necessarily
67 a topological branch. If a new named branch is created from the
79 a topological branch. If a new named branch is created from the
68 head of another named branch, or the default branch, but no
80 head of another named branch, or the default branch, but no
69 further changesets are added to that previous branch, then that
81 further changesets are added to that previous branch, then that
70 previous branch will be a branch in name only.
82 previous branch will be a branch in name only.
71
83
72 Branch tip
84 Branch tip
73 See 'Tip, branch'.
85 See 'Tip, branch'.
74
86
75 Branch, topological
87 Branch, topological
76 Every time a new child changeset is created from a parent that is
88 Every time a new child changeset is created from a parent that is
77 not a head, a new topological branch is created. If a topological
89 not a head, a new topological branch is created. If a topological
78 branch is named, it becomes a named branch. If a topological
90 branch is named, it becomes a named branch. If a topological
79 branch is not named, it becomes an anonymous branch of the
91 branch is not named, it becomes an anonymous branch of the
80 current, possibly default, branch.
92 current, possibly default, branch.
81
93
82 Changelog
94 Changelog
83 A record of the changesets in the order in which they were added
95 A record of the changesets in the order in which they were added
84 to the repository. This includes details such as changeset id,
96 to the repository. This includes details such as changeset id,
85 author, commit message, date, and list of changed files.
97 author, commit message, date, and list of changed files.
86
98
87 Changeset
99 Changeset
88 A snapshot of the state of the repository used to record a change.
100 A snapshot of the state of the repository used to record a change.
89
101
90 Changeset, child
102 Changeset, child
91 The converse of parent changeset: if P is a parent of C, then C is
103 The converse of parent changeset: if P is a parent of C, then C is
92 a child of P. There is no limit to the number of children that a
104 a child of P. There is no limit to the number of children that a
93 changeset may have.
105 changeset may have.
94
106
95 Changeset id
107 Changeset id
96 A SHA-1 hash that uniquely identifies a changeset. It may be
108 A SHA-1 hash that uniquely identifies a changeset. It may be
97 represented as either a "long" 40 hexadecimal digit string, or a
109 represented as either a "long" 40 hexadecimal digit string, or a
98 "short" 12 hexadecimal digit string.
110 "short" 12 hexadecimal digit string.
99
111
100 Changeset, merge
112 Changeset, merge
101 A changeset with two parents. This occurs when a merge is
113 A changeset with two parents. This occurs when a merge is
102 committed.
114 committed.
103
115
104 Changeset, parent
116 Changeset, parent
105 A revision upon which a child changeset is based. Specifically, a
117 A revision upon which a child changeset is based. Specifically, a
106 parent changeset of a changeset C is a changeset whose node
118 parent changeset of a changeset C is a changeset whose node
107 immediately precedes C in the DAG. Changesets have at most two
119 immediately precedes C in the DAG. Changesets have at most two
108 parents.
120 parents.
109
121
110 Checkout
122 Checkout
111 (Noun) The working directory being updated to a specific
123 (Noun) The working directory being updated to a specific
112 revision. This use should probably be avoided where possible, as
124 revision. This use should probably be avoided where possible, as
113 changeset is much more appropriate than checkout in this context.
125 changeset is much more appropriate than checkout in this context.
114
126
115 Example: "I'm using checkout X."
127 Example: "I'm using checkout X."
116
128
117 (Verb) Updating the working directory to a specific changeset. See
129 (Verb) Updating the working directory to a specific changeset. See
118 :hg:`help update`.
130 :hg:`help update`.
119
131
120 Example: "I'm going to check out changeset X."
132 Example: "I'm going to check out changeset X."
121
133
122 Child changeset
134 Child changeset
123 See 'Changeset, child'.
135 See 'Changeset, child'.
124
136
125 Close changeset
137 Close changeset
126 See 'Changeset, close'.
138 See 'Changeset, close'.
127
139
128 Closed branch
140 Closed branch
129 See 'Branch, closed'.
141 See 'Branch, closed'.
130
142
131 Clone
143 Clone
132 (Noun) An entire or partial copy of a repository. The partial
144 (Noun) An entire or partial copy of a repository. The partial
133 clone must be in the form of a revision and its ancestors.
145 clone must be in the form of a revision and its ancestors.
134
146
135 Example: "Is your clone up to date?".
147 Example: "Is your clone up to date?".
136
148
137 (Verb) The process of creating a clone, using :hg:`clone`.
149 (Verb) The process of creating a clone, using :hg:`clone`.
138
150
139 Example: "I'm going to clone the repository".
151 Example: "I'm going to clone the repository".
140
152
141 Closed branch head
153 Closed branch head
142 See 'Head, closed branch'.
154 See 'Head, closed branch'.
143
155
144 Commit
156 Commit
145 (Noun) A synonym for changeset.
157 (Noun) A synonym for changeset.
146
158
147 Example: "Is the bug fixed in your recent commit?"
159 Example: "Is the bug fixed in your recent commit?"
148
160
149 (Verb) The act of recording changes to a repository. When files
161 (Verb) The act of recording changes to a repository. When files
150 are committed in a working directory, Mercurial finds the
162 are committed in a working directory, Mercurial finds the
151 differences between the committed files and their parent
163 differences between the committed files and their parent
152 changeset, creating a new changeset in the repository.
164 changeset, creating a new changeset in the repository.
153
165
154 Example: "You should commit those changes now."
166 Example: "You should commit those changes now."
155
167
156 Cset
168 Cset
157 A common abbreviation of the term changeset.
169 A common abbreviation of the term changeset.
158
170
159 DAG
171 DAG
160 The repository of changesets of a distributed version control
172 The repository of changesets of a distributed version control
161 system (DVCS) can be described as a directed acyclic graph (DAG),
173 system (DVCS) can be described as a directed acyclic graph (DAG),
162 consisting of nodes and edges, where nodes correspond to
174 consisting of nodes and edges, where nodes correspond to
163 changesets and edges imply a parent -> child relation. This graph
175 changesets and edges imply a parent -> child relation. This graph
164 can be visualized by graphical tools such as :hg:`glog`
176 can be visualized by graphical tools such as :hg:`glog`
165 (graphlog). In Mercurial, the DAG is limited by the requirement
177 (graphlog). In Mercurial, the DAG is limited by the requirement
166 for children to have at most two parents.
178 for children to have at most two parents.
167
179
168 Default branch
180 Default branch
169 See 'Branch, default'.
181 See 'Branch, default'.
170
182
171 Descendant
183 Descendant
172 Any changeset that can be reached by a chain of child changesets
184 Any changeset that can be reached by a chain of child changesets
173 from a given changeset. More precisely, the descendants of a
185 from a given changeset. More precisely, the descendants of a
174 changeset can be defined by two properties: the child of a
186 changeset can be defined by two properties: the child of a
175 changeset is a descendant, and the child of a descendant is a
187 changeset is a descendant, and the child of a descendant is a
176 descendant. See also: 'Ancestor'.
188 descendant. See also: 'Ancestor'.
177
189
178 Diff
190 Diff
179 (Noun) The difference between the contents and attributes of files
191 (Noun) The difference between the contents and attributes of files
180 in two changesets or a changeset and the current working
192 in two changesets or a changeset and the current working
181 directory. The difference is usually represented in a standard
193 directory. The difference is usually represented in a standard
182 form called a "diff" or "patch". The "git diff" format is used
194 form called a "diff" or "patch". The "git diff" format is used
183 when the changes include copies, renames, or changes to file
195 when the changes include copies, renames, or changes to file
184 attributes, none of which can be represented/handled by classic
196 attributes, none of which can be represented/handled by classic
185 "diff" and "patch".
197 "diff" and "patch".
186
198
187 Example: "Did you see my correction in the diff?"
199 Example: "Did you see my correction in the diff?"
188
200
189 (Verb) Diffing two changesets is the action of creating a diff or
201 (Verb) Diffing two changesets is the action of creating a diff or
190 patch.
202 patch.
191
203
192 Example: "If you diff with changeset X, you will see what I mean."
204 Example: "If you diff with changeset X, you will see what I mean."
193
205
194 Directory, working
206 Directory, working
195 The working directory represents the state of the files tracked by
207 The working directory represents the state of the files tracked by
196 Mercurial, that will be recorded in the next commit. The working
208 Mercurial, that will be recorded in the next commit. The working
197 directory initially corresponds to the snapshot at an existing
209 directory initially corresponds to the snapshot at an existing
198 changeset, known as the parent of the working directory. See
210 changeset, known as the parent of the working directory. See
199 'Parent, working directory'. The state may be modified by changes
211 'Parent, working directory'. The state may be modified by changes
200 to the files introduced manually or by a merge. The repository
212 to the files introduced manually or by a merge. The repository
201 metadata exists in the .hg directory inside the working directory.
213 metadata exists in the .hg directory inside the working directory.
202
214
203 Graph
215 Graph
204 See DAG and :hg:`help graphlog`.
216 See DAG and :hg:`help graphlog`.
205
217
206 Head
218 Head
207 The term 'head' may be used to refer to both a branch head or a
219 The term 'head' may be used to refer to both a branch head or a
208 repository head, depending on the context. See 'Head, branch' and
220 repository head, depending on the context. See 'Head, branch' and
209 'Head, repository' for specific definitions.
221 'Head, repository' for specific definitions.
210
222
211 Heads are where development generally takes place and are the
223 Heads are where development generally takes place and are the
212 usual targets for update and merge operations.
224 usual targets for update and merge operations.
213
225
214 Head, branch
226 Head, branch
215 A changeset with no descendants on the same named branch.
227 A changeset with no descendants on the same named branch.
216
228
217 Head, closed branch
229 Head, closed branch
218 A changeset that marks a head as no longer interesting. The closed
230 A changeset that marks a head as no longer interesting. The closed
219 head is no longer listed by :hg:`heads`. A branch is considered
231 head is no longer listed by :hg:`heads`. A branch is considered
220 closed when all its heads are closed and consequently is not
232 closed when all its heads are closed and consequently is not
221 listed by :hg:`branches`.
233 listed by :hg:`branches`.
222
234
223 Head, repository
235 Head, repository
224 A topological head which has not been closed.
236 A topological head which has not been closed.
225
237
226 Head, topological
238 Head, topological
227 A changeset with no children in the repository.
239 A changeset with no children in the repository.
228
240
229 History, immutable
241 History, immutable
230 Once committed, changesets cannot be altered. Extensions which
242 Once committed, changesets cannot be altered. Extensions which
231 appear to change history actually create new changesets that
243 appear to change history actually create new changesets that
232 replace existing ones, and then destroy the old changesets. Doing
244 replace existing ones, and then destroy the old changesets. Doing
233 so in public repositories can result in old changesets being
245 so in public repositories can result in old changesets being
234 reintroduced to the repository.
246 reintroduced to the repository.
235
247
236 History, rewriting
248 History, rewriting
237 The changesets in a repository are immutable. However, extensions
249 The changesets in a repository are immutable. However, extensions
238 to Mercurial can be used to alter the repository, usually in such
250 to Mercurial can be used to alter the repository, usually in such
239 a way as to preserve changeset contents.
251 a way as to preserve changeset contents.
240
252
241 Immutable history
253 Immutable history
242 See 'History, immutable'.
254 See 'History, immutable'.
243
255
244 Merge changeset
256 Merge changeset
245 See 'Changeset, merge'.
257 See 'Changeset, merge'.
246
258
247 Manifest
259 Manifest
248 Each changeset has a manifest, which is the list of files that are
260 Each changeset has a manifest, which is the list of files that are
249 tracked by the changeset.
261 tracked by the changeset.
250
262
251 Merge
263 Merge
252 Used to bring together divergent branches of work. When you update
264 Used to bring together divergent branches of work. When you update
253 to a changeset and then merge another changeset, you bring the
265 to a changeset and then merge another changeset, you bring the
254 history of the latter changeset into your working directory. Once
266 history of the latter changeset into your working directory. Once
255 conflicts are resolved (and marked), this merge may be committed
267 conflicts are resolved (and marked), this merge may be committed
256 as a merge changeset, bringing two branches together in the DAG.
268 as a merge changeset, bringing two branches together in the DAG.
257
269
258 Named branch
270 Named branch
259 See 'Branch, named'.
271 See 'Branch, named'.
260
272
261 Null changeset
273 Null changeset
262 The empty changeset. It is the parent state of newly-initialized
274 The empty changeset. It is the parent state of newly-initialized
263 repositories and repositories with no checked out revision. It is
275 repositories and repositories with no checked out revision. It is
264 thus the parent of root changesets and the effective ancestor when
276 thus the parent of root changesets and the effective ancestor when
265 merging unrelated changesets. Can be specified by the alias 'null'
277 merging unrelated changesets. Can be specified by the alias 'null'
266 or by the changeset ID '000000000000'.
278 or by the changeset ID '000000000000'.
267
279
268 Parent
280 Parent
269 See 'Changeset, parent'.
281 See 'Changeset, parent'.
270
282
271 Parent changeset
283 Parent changeset
272 See 'Changeset, parent'.
284 See 'Changeset, parent'.
273
285
274 Parent, working directory
286 Parent, working directory
275 The working directory parent reflects a virtual revision which is
287 The working directory parent reflects a virtual revision which is
276 the child of the changeset (or two changesets with an uncommitted
288 the child of the changeset (or two changesets with an uncommitted
277 merge) shown by :hg:`parents`. This is changed with
289 merge) shown by :hg:`parents`. This is changed with
278 :hg:`update`. Other commands to see the working directory parent
290 :hg:`update`. Other commands to see the working directory parent
279 are :hg:`summary` and :hg:`id`. Can be specified by the alias ".".
291 are :hg:`summary` and :hg:`id`. Can be specified by the alias ".".
280
292
281 Patch
293 Patch
282 (Noun) The product of a diff operation.
294 (Noun) The product of a diff operation.
283
295
284 Example: "I've sent you my patch."
296 Example: "I've sent you my patch."
285
297
286 (Verb) The process of using a patch file to transform one
298 (Verb) The process of using a patch file to transform one
287 changeset into another.
299 changeset into another.
288
300
289 Example: "You will need to patch that revision."
301 Example: "You will need to patch that revision."
290
302
291 Pull
303 Pull
292 An operation in which changesets in a remote repository which are
304 An operation in which changesets in a remote repository which are
293 not in the local repository are brought into the local
305 not in the local repository are brought into the local
294 repository. Note that this operation without special arguments
306 repository. Note that this operation without special arguments
295 only updates the repository, it does not update the files in the
307 only updates the repository, it does not update the files in the
296 working directory. See :hg:`help pull`.
308 working directory. See :hg:`help pull`.
297
309
298 Push
310 Push
299 An operation in which changesets in a local repository which are
311 An operation in which changesets in a local repository which are
300 not in a remote repository are sent to the remote repository. Note
312 not in a remote repository are sent to the remote repository. Note
301 that this operation only adds changesets which have been committed
313 that this operation only adds changesets which have been committed
302 locally to the remote repository. Uncommitted changes are not
314 locally to the remote repository. Uncommitted changes are not
303 sent. See :hg:`help push`.
315 sent. See :hg:`help push`.
304
316
305 Repository
317 Repository
306 The metadata describing all recorded states of a collection of
318 The metadata describing all recorded states of a collection of
307 files. Each recorded state is represented by a changeset. A
319 files. Each recorded state is represented by a changeset. A
308 repository is usually (but not always) found in the ``.hg``
320 repository is usually (but not always) found in the ``.hg``
309 subdirectory of a working directory. Any recorded state can be
321 subdirectory of a working directory. Any recorded state can be
310 recreated by "updating" a working directory to a specific
322 recreated by "updating" a working directory to a specific
311 changeset.
323 changeset.
312
324
313 Repository head
325 Repository head
314 See 'Head, repository'.
326 See 'Head, repository'.
315
327
316 Revision
328 Revision
317 A state of the repository at some point in time. Earlier revisions
329 A state of the repository at some point in time. Earlier revisions
318 can be updated to by using :hg:`update`. See also 'Revision
330 can be updated to by using :hg:`update`. See also 'Revision
319 number'; See also 'Changeset'.
331 number'; See also 'Changeset'.
320
332
321 Revision number
333 Revision number
322 This integer uniquely identifies a changeset in a specific
334 This integer uniquely identifies a changeset in a specific
323 repository. It represents the order in which changesets were added
335 repository. It represents the order in which changesets were added
324 to a repository, starting with revision number 0. Note that the
336 to a repository, starting with revision number 0. Note that the
325 revision number may be different in each clone of a repository. To
337 revision number may be different in each clone of a repository. To
326 identify changesets uniquely between different clones, see
338 identify changesets uniquely between different clones, see
327 'Changeset id'.
339 'Changeset id'.
328
340
329 Revlog
341 Revlog
330 History storage mechanism used by Mercurial. It is a form of delta
342 History storage mechanism used by Mercurial. It is a form of delta
331 encoding, with occasional full revision of data followed by delta
343 encoding, with occasional full revision of data followed by delta
332 of each successive revision. It includes data and an index
344 of each successive revision. It includes data and an index
333 pointing to the data.
345 pointing to the data.
334
346
335 Rewriting history
347 Rewriting history
336 See 'History, rewriting'.
348 See 'History, rewriting'.
337
349
338 Root
350 Root
339 A changeset that has only the null changeset as its parent. Most
351 A changeset that has only the null changeset as its parent. Most
340 repositories have only a single root changeset.
352 repositories have only a single root changeset.
341
353
342 Tag
354 Tag
343 An alternative name given to a changeset. Tags can be used in all
355 An alternative name given to a changeset. Tags can be used in all
344 places where Mercurial expects a changeset ID, e.g., with
356 places where Mercurial expects a changeset ID, e.g., with
345 :hg:`update`. The creation of a tag is stored in the history and
357 :hg:`update`. The creation of a tag is stored in the history and
346 will thus automatically be shared with other using push and pull.
358 will thus automatically be shared with other using push and pull.
347
359
348 Tip
360 Tip
349 The changeset with the highest revision number. It is the changeset
361 The changeset with the highest revision number. It is the changeset
350 most recently added in a repository.
362 most recently added in a repository.
351
363
352 Tip, branch
364 Tip, branch
353 The head of a given branch with the highest revision number. When
365 The head of a given branch with the highest revision number. When
354 a branch name is used as a revision identifier, it refers to the
366 a branch name is used as a revision identifier, it refers to the
355 branch tip. See also 'Branch, head'. Note that because revision
367 branch tip. See also 'Branch, head'. Note that because revision
356 numbers may be different in different repository clones, the
368 numbers may be different in different repository clones, the
357 branch tip may be different in different cloned repositories.
369 branch tip may be different in different cloned repositories.
358
370
359 Update
371 Update
360 (Noun) Another synonym of changeset.
372 (Noun) Another synonym of changeset.
361
373
362 Example: "I've pushed an update".
374 Example: "I've pushed an update".
363
375
364 (Verb) This term is usually used to describe updating the state of
376 (Verb) This term is usually used to describe updating the state of
365 the working directory to that of a specific changeset. See
377 the working directory to that of a specific changeset. See
366 :hg:`help update`.
378 :hg:`help update`.
367
379
368 Example: "You should update".
380 Example: "You should update".
369
381
370 Working directory
382 Working directory
371 See 'Directory, working'.
383 See 'Directory, working'.
372
384
373 Working directory parent
385 Working directory parent
374 See 'Parent, working directory'.
386 See 'Parent, working directory'.
General Comments 0
You need to be logged in to leave comments. Login now