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