You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
242 lines
7.5 KiB
242 lines
7.5 KiB
object:: |
|
The unit of storage in git. It is uniquely identified by |
|
the SHA1 of its contents. Consequently, an object can not |
|
be changed. |
|
|
|
object name:: |
|
The unique identifier of an object. The hash of the object's contents |
|
using the Secure Hash Algorithm 1 and usually represented by the 40 |
|
character hexadecimal encoding of the hash of the object (possibly |
|
followed by a white space). |
|
|
|
SHA1:: |
|
Synonym for object name. |
|
|
|
object identifier:: |
|
Synonym for object name. |
|
|
|
hash:: |
|
In git's context, synonym to object name. |
|
|
|
object database:: |
|
Stores a set of "objects", and an individial object is identified |
|
by its object name. The objects usually live in `$GIT_DIR/objects/`. |
|
|
|
blob object:: |
|
Untyped object, e.g. the contents of a file. |
|
|
|
tree object:: |
|
An object containing a list of file names and modes along with refs |
|
to the associated blob and/or tree objects. A tree is equivalent |
|
to a directory. |
|
|
|
tree:: |
|
Either a working tree, or a tree object together with the |
|
dependent blob and tree objects (i.e. a stored representation |
|
of a working tree). |
|
|
|
DAG:: |
|
Directed acyclic graph. The commit objects form a directed acyclic |
|
graph, because they have parents (directed), and the graph of commit |
|
objects is acyclic (there is no chain which begins and ends with the |
|
same object). |
|
|
|
index:: |
|
A collection of files with stat information, whose contents are |
|
stored as objects. The index is a stored version of your working |
|
tree. Truth be told, it can also contain a second, and even a third |
|
version of a working tree, which are used when merging. |
|
|
|
index entry:: |
|
The information regarding a particular file, stored in the index. |
|
An index entry can be unmerged, if a merge was started, but not |
|
yet finished (i.e. if the index contains multiple versions of |
|
that file). |
|
|
|
unmerged index: |
|
An index which contains unmerged index entries. |
|
|
|
cache:: |
|
Obsolete for: index. |
|
|
|
working tree:: |
|
The set of files and directories currently being worked on, |
|
i.e. you can work in your working tree without using git at all. |
|
|
|
directory:: |
|
The list you get with "ls" :-) |
|
|
|
revision:: |
|
A particular state of files and directories which was stored in |
|
the object database. It is referenced by a commit object. |
|
|
|
checkout:: |
|
The action of updating the working tree to a revision which was |
|
stored in the object database. |
|
|
|
commit:: |
|
As a verb: The action of storing the current state of the index in the |
|
object database. The result is a revision. |
|
As a noun: Short hand for commit object. |
|
|
|
commit object:: |
|
An object which contains the information about a particular |
|
revision, such as parents, committer, author, date and the |
|
tree object which corresponds to the top directory of the |
|
stored revision. |
|
|
|
parent:: |
|
A commit object contains a (possibly empty) list of the logical |
|
predecessor(s) in the line of development, i.e. its parents. |
|
|
|
changeset:: |
|
BitKeeper/cvsps speak for "commit". Since git does not store |
|
changes, but states, it really does not make sense to use |
|
the term "changesets" with git. |
|
|
|
clean:: |
|
A working tree is clean, if it corresponds to the revision |
|
referenced by the current head. |
|
|
|
dirty:: |
|
A working tree is said to be dirty if it contains modifications |
|
which have not been committed to the current branch. |
|
|
|
head:: |
|
The top of a branch. It contains a ref to the corresponding |
|
commit object. |
|
|
|
branch:: |
|
A non-cyclical graph of revisions, i.e. the complete history of |
|
a particular revision, which is called the branch head. The |
|
branch heads are stored in `$GIT_DIR/refs/heads/`. |
|
|
|
ref:: |
|
A 40-byte hex representation of a SHA1 pointing to a particular |
|
object. These may be stored in `$GIT_DIR/refs/`. |
|
|
|
head ref:: |
|
A ref pointing to a head. Often, this is abbreviated to "head". |
|
Head refs are stored in `$GIT_DIR/refs/heads/`. |
|
|
|
tree-ish:: |
|
A ref pointing to either a commit object, a tree object, or a |
|
tag object pointing to a tag or commit or tree object. |
|
|
|
ent:: |
|
Favorite synonym to "tree-ish" by some total geeks. See |
|
`http://en.wikipedia.org/wiki/Ent_(Middle-earth)` for an in-depth |
|
explanation. |
|
|
|
tag object:: |
|
An object containing a ref pointing to another object, which can |
|
contain a message just like a commit object. It can also |
|
contain a (PGP) signature, in which case it is called a "signed |
|
tag object". |
|
|
|
tag:: |
|
A ref pointing to a tag or commit object. In contrast to a head, |
|
a tag is not changed by a commit. Tags (not tag objects) are |
|
stored in `$GIT_DIR/refs/tags/`. A git tag has nothing to do with |
|
a Lisp tag (which is called object type in git's context). |
|
A tag is most typically used to mark a particular point in the |
|
commit ancestry chain. |
|
|
|
merge:: |
|
To merge branches means to try to accumulate the changes since a |
|
common ancestor and apply them to the first branch. An automatic |
|
merge uses heuristics to accomplish that. Evidently, an automatic |
|
merge can fail. |
|
|
|
octopus:: |
|
To merge more than two branches. Also denotes an intelligent |
|
predator. |
|
|
|
resolve:: |
|
The action of fixing up manually what a failed automatic merge |
|
left behind. |
|
|
|
rewind:: |
|
To throw away part of the development, i.e. to assign the head to |
|
an earlier revision. |
|
|
|
rebase:: |
|
To clean a branch by starting from the head of the main line of |
|
development ("master"), and reapply the (possibly cherry-picked) |
|
changes from that branch. |
|
|
|
repository:: |
|
A collection of refs together with an object database containing |
|
all objects, which are reachable from the refs, possibly accompanied |
|
by meta data from one or more porcelains. A repository can |
|
share an object database with other repositories. |
|
|
|
git archive:: |
|
Synonym for repository (for arch people). |
|
|
|
file system:: |
|
Linus Torvalds originally designed git to be a user space file |
|
system, i.e. the infrastructure to hold files and directories. |
|
That ensured the efficiency and speed of git. |
|
|
|
alternate object database:: |
|
Via the alternates mechanism, a repository can inherit part of its |
|
object database from another object database, which is called |
|
"alternate". |
|
|
|
reachable:: |
|
An object is reachable from a ref/commit/tree/tag, if there is a |
|
chain leading from the latter to the former. |
|
|
|
chain:: |
|
A list of objects, where each object in the list contains a |
|
reference to its successor (for example, the successor of a commit |
|
could be one of its parents). |
|
|
|
fetch:: |
|
Fetching a branch means to get the branch's head ref from a |
|
remote repository, to find out which objects are missing from |
|
the local object database, and to get them, too. |
|
|
|
pull:: |
|
Pulling a branch means to fetch it and merge it. |
|
|
|
push:: |
|
Pushing a branch means to get the branch's head ref from a remote |
|
repository, find out if it is an ancestor to the branch's local |
|
head ref is a direct, and in that case, putting all objects, which |
|
are reachable from the local head ref, and which are missing from |
|
the remote repository, into the remote object database, and updating |
|
the remote head ref. If the remote head is not an ancestor to the |
|
local head, the push fails. |
|
|
|
pack:: |
|
A set of objects which have been compressed into one file (to save |
|
space or to transmit them efficiently). |
|
|
|
pack index:: |
|
The list of identifiers, and other information, of the objects in a |
|
pack, to assist in efficiently accessing the contents of a pack. |
|
|
|
core git:: |
|
Fundamental data structures and utilities of git. Exposes only |
|
limited source code management tools. |
|
|
|
plumbing:: |
|
Cute name for core git. |
|
|
|
porcelain:: |
|
Cute name for programs and program suites depending on core git, |
|
presenting a high level access to core git. Porcelains expose |
|
more of a SCM interface than the plumbing. |
|
|
|
object type: |
|
One of the identifiers "commit","tree","tag" and "blob" describing |
|
the type of an object. |
|
|
|
SCM:: |
|
Source code management (tool). |
|
|
|
dircache:: |
|
You are *waaaaay* behind. |
|
|
|
|