1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
\r
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
\r
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
\r
6 <meta name="generator" content="AsciiDoc 7.0.1" />
\r
7 <style type="text/css">
\r
9 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
\r
11 border: 1px solid red;
\r
16 margin: 1em 5% 1em 5%;
\r
20 a:visited { color: fuchsia; }
\r
34 h1, h2, h3, h4, h5, h6 {
\r
36 font-family: sans-serif;
\r
38 margin-bottom: 0.5em;
\r
43 border-bottom: 2px solid silver;
\r
46 border-bottom: 2px solid silver;
\r
56 border: 1px solid silver;
\r
61 margin-bottom: 0.5em;
\r
71 font-family: sans-serif;
\r
78 font-family: sans-serif;
\r
82 font-family: sans-serif;
\r
84 border-top: 2px solid silver;
\r
90 padding-bottom: 0.5em;
\r
94 padding-bottom: 0.5em;
\r
98 div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
\r
99 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
\r
100 div.admonitionblock {
\r
103 margin-bottom: 1.5em;
\r
105 div.admonitionblock {
\r
107 margin-bottom: 2.5em;
\r
110 div.content { /* Block element content. */
\r
114 /* Block element titles. */
\r
115 div.title, caption.title {
\r
116 font-family: sans-serif;
\r
120 margin-bottom: 0.5em;
\r
126 td div.title:first-child {
\r
129 div.content div.title:first-child {
\r
132 div.content + div.title {
\r
136 div.sidebarblock > div.content {
\r
137 background: #ffffee;
\r
138 border: 1px solid silver;
\r
142 div.listingblock > div.content {
\r
143 border: 1px solid silver;
\r
144 background: #f4f4f4;
\r
148 div.quoteblock > div.content {
\r
149 padding-left: 2.0em;
\r
151 div.quoteblock .attribution {
\r
155 div.admonitionblock .icon {
\r
156 vertical-align: top;
\r
159 text-decoration: underline;
\r
161 padding-right: 0.5em;
\r
163 div.admonitionblock td.content {
\r
164 padding-left: 0.5em;
\r
165 border-left: 2px solid silver;
\r
168 div.exampleblock > div.content {
\r
169 border-left: 2px solid silver;
\r
173 div.verseblock div.content {
\r
177 div.imageblock div.content { padding-left: 0; }
\r
178 div.imageblock img { border: 1px solid silver; }
\r
179 span.image img { border-style: none; }
\r
183 margin-bottom: 0.8em;
\r
188 font-style: italic;
\r
190 dd > *:first-child {
\r
195 list-style-position: outside;
\r
198 list-style-type: lower-alpha;
\r
201 div.tableblock > table {
\r
202 border-color: #527bbd;
\r
206 font-family: sans-serif;
\r
215 margin-bottom: 0.8em;
\r
218 vertical-align: top;
\r
219 font-style: italic;
\r
220 padding-right: 0.8em;
\r
223 vertical-align: top;
\r
227 div#footer-badges { display: none; }
\r
229 /* Workarounds for IE6's broken and incomplete CSS2. */
\r
231 div.sidebar-content {
\r
232 background: #ffffee;
\r
233 border: 1px solid silver;
\r
236 div.sidebar-title, div.image-title {
\r
237 font-family: sans-serif;
\r
240 margin-bottom: 0.5em;
\r
243 div.listingblock div.content {
\r
244 border: 1px solid silver;
\r
245 background: #f4f4f4;
\r
249 div.quoteblock-content {
\r
250 padding-left: 2.0em;
\r
253 div.exampleblock-content {
\r
254 border-left: 2px solid silver;
\r
255 padding-left: 0.5em;
\r
258 <title>GIT Glossary</title>
\r
262 <h1>GIT Glossary</h1>
\r
264 <div id="preamble">
\r
265 <div class="sectionbody">
\r
266 <p>This list is sorted alphabetically:</p>
\r
269 <a id="ref_alternate_object_database"></a>alternate object database
\r
273 Via the alternates mechanism, a <a href="#ref_repository">repository</a> can
\r
274 inherit part of its <a href="#ref_object_database">object database</a> from another
\r
275 <a href="#ref_object_database">object database</a>, which is called "alternate".
\r
279 <a id="ref_blob_object"></a>blob object
\r
283 Untyped <a href="#ref_object">object</a>, e.g. the contents of a file.
\r
287 <a id="ref_branch"></a>branch
\r
291 A non-cyclical graph of revisions, i.e. the complete history of a
\r
292 particular <a href="#ref_revision">revision</a>, which is called the
\r
293 <a href="#ref_branch">branch</a> <a href="#ref_head">head</a>. The <a href="#ref_branch">branch</a> heads
\r
294 are stored in <tt>$GIT_DIR/refs/heads/</tt>.
\r
298 <a id="ref_cache"></a>cache
\r
302 Obsolete for: <a href="#ref_index">index</a>.
\r
306 <a id="ref_chain"></a>chain
\r
310 A list of objects, where each <a href="#ref_object">object</a> in the list contains
\r
311 a reference to its successor (for example, the successor of a
\r
312 <a href="#ref_commit">commit</a> could be one of its parents).
\r
316 <a id="ref_changeset"></a>changeset
\r
320 BitKeeper/cvsps speak for "<a href="#ref_commit">commit</a>". Since git does not
\r
321 store changes, but states, it really does not make sense to use the term
\r
322 "changesets" with git.
\r
326 <a id="ref_checkout"></a>checkout
\r
330 The action of updating the <a href="#ref_working_tree">working tree</a> to a
\r
331 <a href="#ref_revision">revision</a> which was stored in the
\r
332 <a href="#ref_object_database">object database</a>.
\r
336 <a id="ref_clean"></a>clean
\r
340 A <a href="#ref_working_tree">working tree</a> is <a href="#ref_clean">clean</a>, if it
\r
341 corresponds to the <a href="#ref_revision">revision</a> referenced by the current
\r
342 <a href="#ref_head">head</a>.
\r
346 <a id="ref_commit"></a>commit
\r
350 As a verb: The action of storing the current state of the
\r
351 <a href="#ref_index">index</a> in the <a href="#ref_object_database">object database</a>. The
\r
352 result is a <a href="#ref_revision">revision</a>. As a noun: Short hand for
\r
353 <a href="#ref_commit_object">commit object</a>.
\r
357 <a id="ref_commit_object"></a>commit object
\r
361 An <a href="#ref_object">object</a> which contains the information about a
\r
362 particular <a href="#ref_revision">revision</a>, such as parents, committer,
\r
363 author, date and the <a href="#ref_tree_object">tree object</a> which corresponds
\r
364 to the top <a href="#ref_directory">directory</a> of the stored
\r
365 <a href="#ref_revision">revision</a>.
\r
369 <a id="ref_core_git"></a>core git
\r
373 Fundamental data structures and utilities of git. Exposes only limited
\r
374 source code management tools.
\r
378 <a id="ref_DAG"></a>DAG
\r
382 Directed acyclic graph. The <a href="#ref_commit">commit</a> objects form a
\r
383 directed acyclic graph, because they have parents (directed), and the
\r
384 graph of <a href="#ref_commit">commit</a> objects is acyclic (there is no
\r
385 <a href="#ref_chain">chain</a> which begins and ends with the same
\r
386 <a href="#ref_object">object</a>).
\r
390 <a id="ref_dircache"></a>dircache
\r
394 You are <strong>waaaaay</strong> behind.
\r
398 <a id="ref_directory"></a>directory
\r
402 The list you get with "ls" :-)
\r
406 <a id="ref_dirty"></a>dirty
\r
410 A <a href="#ref_working_tree">working tree</a> is said to be <a href="#ref_dirty">dirty</a> if
\r
411 it contains modifications which have not been committed to the current
\r
412 <a href="#ref_branch">branch</a>.
\r
416 <a id="ref_ent"></a>ent
\r
420 Favorite synonym to "<a href="#ref_tree-ish">tree-ish</a>" by some total geeks. See
\r
421 <tt>http://en.wikipedia.org/wiki/Ent_(Middle-earth)</tt> for an in-depth
\r
426 <a id="ref_fetch"></a>fetch
\r
430 Fetching a <a href="#ref_branch">branch</a> means to get the
\r
431 <a href="#ref_branch">branch</a>'s <a href="#ref_head_ref">head ref</a> from a remote
\r
432 <a href="#ref_repository">repository</a>, to find out which objects are missing
\r
433 from the local <a href="#ref_object_database">object database</a>, and to get them,
\r
438 <a id="ref_file_system"></a>file system
\r
442 Linus Torvalds originally designed git to be a user space file system,
\r
443 i.e. the infrastructure to hold files and directories. That ensured the
\r
444 efficiency and speed of git.
\r
448 <a id="ref_git_archive"></a>git archive
\r
452 Synonym for <a href="#ref_repository">repository</a> (for arch people).
\r
456 <a id="ref_hash"></a>hash
\r
460 In git's context, synonym to <a href="#ref_object_name">object name</a>.
\r
464 <a id="ref_head"></a>head
\r
468 The top of a <a href="#ref_branch">branch</a>. It contains a <a href="#ref_ref">ref</a> to the
\r
469 corresponding <a href="#ref_commit_object">commit object</a>.
\r
473 <a id="ref_head_ref"></a>head ref
\r
477 A <a href="#ref_ref">ref</a> pointing to a <a href="#ref_head">head</a>. Often, this is
\r
478 abbreviated to "<a href="#ref_head">head</a>". Head refs are stored in
\r
479 <tt>$GIT_DIR/refs/heads/</tt>.
\r
483 <a id="ref_index"></a>index
\r
487 A collection of files with stat information, whose contents are stored
\r
488 as objects. The <a href="#ref_index">index</a> is a stored version of your working
\r
489 <a href="#ref_tree">tree</a>. Truth be told, it can also contain a second, and even
\r
490 a third version of a <a href="#ref_working_tree">working tree</a>, which are used
\r
495 <a id="ref_index_entry"></a>index entry
\r
499 The information regarding a particular file, stored in the
\r
500 <a href="#ref_index">index</a>. An <a href="#ref_index_entry">index entry</a> can be unmerged,
\r
501 if a <a href="#ref_merge">merge</a> was started, but not yet finished (i.e. if the
\r
502 <a href="#ref_index">index</a> contains multiple versions of that file).
\r
506 <a id="ref_master"></a>master
\r
510 The default <a href="#ref_branch">branch</a>. Whenever you create a git
\r
511 <a href="#ref_repository">repository</a>, a <a href="#ref_branch">branch</a> named
\r
512 "<a href="#ref_master">master</a>" is created, and becomes the active
\r
513 <a href="#ref_branch">branch</a>. In most cases, this contains the local
\r
518 <a id="ref_merge"></a>merge
\r
522 To <a href="#ref_merge">merge</a> branches means to try to accumulate the changes
\r
523 since a common ancestor and apply them to the first
\r
524 <a href="#ref_branch">branch</a>. An automatic <a href="#ref_merge">merge</a> uses heuristics
\r
525 to accomplish that. Evidently, an automatic <a href="#ref_merge">merge</a> can
\r
530 <a id="ref_object"></a>object
\r
534 The unit of storage in git. It is uniquely identified by the
\r
535 <a href="#ref_SHA1">SHA1</a> of its contents. Consequently, an
\r
536 <a href="#ref_object">object</a> can not be changed.
\r
540 <a id="ref_object_database"></a>object database
\r
544 Stores a set of "objects", and an individual <a href="#ref_object">object</a> is
\r
545 identified by its <a href="#ref_object_name">object name</a>. The objects usually
\r
546 live in <tt>$GIT_DIR/objects/</tt>.
\r
550 <a id="ref_object_identifier"></a>object identifier
\r
554 Synonym for <a href="#ref_object_name">object name</a>.
\r
558 <a id="ref_object_name"></a>object name
\r
562 The unique identifier of an <a href="#ref_object">object</a>. The <a href="#ref_hash">hash</a>
\r
563 of the <a href="#ref_object">object</a>'s contents using the Secure Hash Algorithm
\r
564 1 and usually represented by the 40 character hexadecimal encoding of
\r
565 the <a href="#ref_hash">hash</a> of the <a href="#ref_object">object</a> (possibly followed by
\r
570 <a id="ref_octopus"></a>octopus
\r
574 To <a href="#ref_merge">merge</a> more than two branches. Also denotes an
\r
575 intelligent predator.
\r
579 <a id="ref_origin"></a>origin
\r
583 The default upstream <a href="#ref_branch">branch</a>. Most projects have one
\r
584 upstream project which they track, and by default
\r
585 <em><a href="#ref_origin">origin</a></em> is used for that purpose. New updates from
\r
586 upstream will be fetched into this <a href="#ref_branch">branch</a>; you should
\r
587 never <a href="#ref_commit">commit</a> to it yourself.
\r
591 <a id="ref_pack"></a>pack
\r
595 A set of objects which have been compressed into one file (to save space
\r
596 or to transmit them efficiently).
\r
600 <a id="ref_pack_index"></a>pack index
\r
604 The list of identifiers, and other information, of the objects in a
\r
605 <a href="#ref_pack">pack</a>, to assist in efficiently accessing the contents of a
\r
606 <a href="#ref_pack">pack</a>.
\r
610 <a id="ref_parent"></a>parent
\r
614 A <a href="#ref_commit_object">commit object</a> contains a (possibly empty) list
\r
615 of the logical predecessor(s) in the line of development, i.e. its
\r
620 <a id="ref_plumbing"></a>plumbing
\r
624 Cute name for <a href="#ref_core_git">core git</a>.
\r
628 <a id="ref_porcelain"></a>porcelain
\r
632 Cute name for programs and program suites depending on
\r
633 <a href="#ref_core_git">core git</a>, presenting a high level access to
\r
634 <a href="#ref_core_git">core git</a>. Porcelains expose more of a <a href="#ref_SCM">SCM</a>
\r
635 interface than the <a href="#ref_plumbing">plumbing</a>.
\r
639 <a id="ref_pull"></a>pull
\r
643 Pulling a <a href="#ref_branch">branch</a> means to <a href="#ref_fetch">fetch</a> it and
\r
644 <a href="#ref_merge">merge</a> it.
\r
648 <a id="ref_push"></a>push
\r
652 Pushing a <a href="#ref_branch">branch</a> means to get the <a href="#ref_branch">branch</a>'s
\r
653 <a href="#ref_head_ref">head ref</a> from a remote <a href="#ref_repository">repository</a>,
\r
654 find out if it is an ancestor to the <a href="#ref_branch">branch</a>'s local
\r
655 <a href="#ref_head_ref">head ref</a> is a direct, and in that case, putting all
\r
656 objects, which are <a href="#ref_reachable">reachable</a> from the local
\r
657 <a href="#ref_head_ref">head ref</a>, and which are missing from the remote
\r
658 <a href="#ref_repository">repository</a>, into the remote
\r
659 <a href="#ref_object_database">object database</a>, and updating the remote
\r
660 <a href="#ref_head_ref">head ref</a>. If the remote <a href="#ref_head">head</a> is not an
\r
661 ancestor to the local <a href="#ref_head">head</a>, the <a href="#ref_push">push</a> fails.
\r
665 <a id="ref_reachable"></a>reachable
\r
669 An <a href="#ref_object">object</a> is <a href="#ref_reachable">reachable</a> from a
\r
670 <a href="#ref_ref">ref</a>/<a href="#ref_commit">commit</a>/<a href="#ref_tree">tree</a>/<a href="#ref_tag">tag</a>,
\r
671 if there is a <a href="#ref_chain">chain</a> leading from the latter to the former.
\r
675 <a id="ref_rebase"></a>rebase
\r
679 To <a href="#ref_clean">clean</a> a <a href="#ref_branch">branch</a> by starting from the
\r
680 <a href="#ref_head">head</a> of the main line of development
\r
681 ("<a href="#ref_master">master</a>"), and reapply the (possibly cherry-picked)
\r
682 changes from that <a href="#ref_branch">branch</a>.
\r
686 <a id="ref_ref"></a>ref
\r
690 A 40-byte hex representation of a <a href="#ref_SHA1">SHA1</a> pointing to a
\r
691 particular <a href="#ref_object">object</a>. These may be stored in
\r
692 <tt>$GIT_DIR/refs/</tt>.
\r
696 <a id="ref_repository"></a>repository
\r
700 A collection of refs together with an <a href="#ref_object_database">object database</a> containing all objects, which are <a href="#ref_reachable">reachable</a>
\r
701 from the refs, possibly accompanied by meta data from one or more
\r
702 porcelains. A <a href="#ref_repository">repository</a> can share an
\r
703 <a href="#ref_object_database">object database</a> with other repositories.
\r
707 <a id="ref_resolve"></a>resolve
\r
711 The action of fixing up manually what a failed automatic
\r
712 <a href="#ref_merge">merge</a> left behind.
\r
716 <a id="ref_revision"></a>revision
\r
720 A particular state of files and directories which was stored in the
\r
721 <a href="#ref_object_database">object database</a>. It is referenced by a
\r
722 <a href="#ref_commit_object">commit object</a>.
\r
726 <a id="ref_rewind"></a>rewind
\r
730 To throw away part of the development, i.e. to assign the
\r
731 <a href="#ref_head">head</a> to an earlier <a href="#ref_revision">revision</a>.
\r
735 <a id="ref_SCM"></a>SCM
\r
739 Source code management (tool).
\r
743 <a id="ref_SHA1"></a>SHA1
\r
747 Synonym for <a href="#ref_object_name">object name</a>.
\r
751 <a id="ref_tag"></a>tag
\r
755 A <a href="#ref_ref">ref</a> pointing to a <a href="#ref_tag">tag</a> or
\r
756 <a href="#ref_commit_object">commit object</a>. In contrast to a <a href="#ref_head">head</a>,
\r
757 a <a href="#ref_tag">tag</a> is not changed by a <a href="#ref_commit">commit</a>. Tags (not
\r
758 <a href="#ref_tag">tag</a> objects) are stored in <tt>$GIT_DIR/refs/tags/</tt>. A git
\r
759 <a href="#ref_tag">tag</a> has nothing to do with a Lisp <a href="#ref_tag">tag</a> (which is
\r
760 called <a href="#ref_object">object</a> type in git's context). A <a href="#ref_tag">tag</a>
\r
761 is most typically used to mark a particular point in the
\r
762 <a href="#ref_commit">commit</a> ancestry <a href="#ref_chain">chain</a>.
\r
766 <a id="ref_tag_object"></a>tag object
\r
770 An <a href="#ref_object">object</a> containing a <a href="#ref_ref">ref</a> pointing to
\r
771 another <a href="#ref_object">object</a>, which can contain a message just like a
\r
772 <a href="#ref_commit_object">commit object</a>. It can also contain a (PGP)
\r
773 signature, in which case it is called a "signed <a href="#ref_tag_object">tag object</a>".
\r
777 <a id="ref_tree"></a>tree
\r
781 Either a <a href="#ref_working_tree">working tree</a>, or a <a href="#ref_tree_object">tree object</a> together with the dependent blob and <a href="#ref_tree">tree</a> objects
\r
782 (i.e. a stored representation of a <a href="#ref_working_tree">working tree</a>).
\r
786 <a id="ref_tree_object"></a>tree object
\r
790 An <a href="#ref_object">object</a> containing a list of file names and modes along
\r
791 with refs to the associated blob and/or <a href="#ref_tree">tree</a> objects. A
\r
792 <a href="#ref_tree">tree</a> is equivalent to a <a href="#ref_directory">directory</a>.
\r
796 <a id="ref_tree-ish"></a>tree-ish
\r
800 A <a href="#ref_ref">ref</a> pointing to either a <a href="#ref_commit_object">commit object</a>, a <a href="#ref_tree_object">tree object</a>, or a <a href="#ref_tag_object">tag object</a> pointing to a <a href="#ref_tag">tag</a> or <a href="#ref_commit">commit</a> or
\r
801 <a href="#ref_tree_object">tree object</a>.
\r
805 <a id="ref_working_tree"></a>working tree
\r
809 The set of files and directories currently being worked on, i.e. you can
\r
810 work in your <a href="#ref_working_tree">working tree</a> without using git at all.
\r
817 <div class="sectionbody">
\r
818 <p>Written by Johannes Schindelin <Johannes.Schindelin@gmx.de> and
\r
819 the git-list <git@vger.kernel.org>.</p>
\r
822 <div class="sectionbody">
\r
823 <p>Part of the <a href="git.html">git</a> suite</p>
\r
826 <div id="footer-text">
\r
827 Last updated 10-Jan-2006 16:53:50 PDT
\r