Difference between revisions of "Glossary"

From Software Heritage Wiki
Jump to navigation Jump to search
(rename tree to directory (we don't use the former, it's git-specific terminology))
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
This glossary contains the definition of common terms used in the Software Heritage project.
 
This glossary contains the definition of common terms used in the Software Heritage project.
  
 +
== C ==
 
; Content
 
; Content
: a file stored in the archive.
+
: a (specific version of a) file stored in the archive, identified by its cryptographic hashes (SHA1, [https://git-scm.com/book/en/v2/Git-Internals-Git-Objects "git-like" SHA1], SHA256) and its size
 +
: Also known as: Blob
 +
: Note: it is incorrect to refer to Contents as "files", because files are usually considered to be named, whereas Contents are nameless. It is only in the context of specific Directories that Contents acquire (local) names
 +
 
 +
; Cryptographic hash
 +
: a fixed-size "summary" of a stream of bytes that is easy to compute, and hard to reverse. ([https://en.wikipedia.org/wiki/Cryptographic_hash_function Cryptographic hash function Wikipedia article])
 +
: also known as: Checksum, Digest
 +
 
 +
== D ==
  
 
; Directory
 
; Directory
:
+
: a set of named pointers to contents (file entries), directories (directory entries) and revisions (revision entries)
 +
 
 +
== H ==
 +
 
 +
; Hash
 +
: see Cryptographic hash
 +
 
 +
== O ==
  
 
; Origin
 
; Origin
 
: a location from which a coherent set of sources has been obtained.
 
: a location from which a coherent set of sources has been obtained.
 +
: Also known as: Data source
 +
: Examples:
 +
:
 +
:* a [https://github.com/torvalds/linux/ Git repository]
 +
:* a [https://www.kernel.org/pub/linux/kernel/v4.x/ directory containing tarballs]
 +
:* the history of a Debian package on [http://snapshot.debian.org/package/linux/ snapshot.debian.org].
 +
 +
== P ==
  
 
; Project
 
; Project
:
+
: an organized effort to develop a software product. Projects might be nested following organizational structures (sub-project, sub-sub-project), are associated to a number of human-meaningful metadata, and release software products via Origins.
 +
 
 +
== R ==
  
 
; Release
 
; Release
 +
: a revision that has been marked by a project as noteworthy with a specific, usually mnemonic, name (for instance, a version number).
 +
: Also known as: Tag (Git-specific terminology)
 +
: Examples:
 
:
 
:
 +
:* a Git tag with its name
 +
:* a tarball with its name
 +
:* a Debian source package with its version number.
  
 
; Revision
 
; Revision
 +
: a "point in time" snapshot in the development history of a project.
 +
: Also known as: Commit (VCS terminology)
 +
: Examples:
 
:
 
:
 +
:* a Git commit
 +
 +
== S ==
  
; Source
+
; SHA
:
+
: (Secure Hash Algorithm) a family of Cryptographic hashes published by the NIST ([https://en.wikipedia.org/wiki/Secure_Hash_Algorithm SHA Wikipedia article])
 +
 
 +
; Snapshot
 +
: the state of all visible branches during a specific visit of an origin
 +
 +
== V ==
  
 
; VCS
 
; VCS
: a Version Control System, like git, svn or hg
+
: acronym for Version Control System
 +
: Examples: Git, Subversion, Mercurial

Latest revision as of 09:52, 5 April 2018

This glossary contains the definition of common terms used in the Software Heritage project.

C

Content
a (specific version of a) file stored in the archive, identified by its cryptographic hashes (SHA1, "git-like" SHA1, SHA256) and its size
Also known as: Blob
Note: it is incorrect to refer to Contents as "files", because files are usually considered to be named, whereas Contents are nameless. It is only in the context of specific Directories that Contents acquire (local) names
Cryptographic hash
a fixed-size "summary" of a stream of bytes that is easy to compute, and hard to reverse. (Cryptographic hash function Wikipedia article)
also known as: Checksum, Digest

D

Directory
a set of named pointers to contents (file entries), directories (directory entries) and revisions (revision entries)

H

Hash
see Cryptographic hash

O

Origin
a location from which a coherent set of sources has been obtained.
Also known as: Data source
Examples:

P

Project
an organized effort to develop a software product. Projects might be nested following organizational structures (sub-project, sub-sub-project), are associated to a number of human-meaningful metadata, and release software products via Origins.

R

Release
a revision that has been marked by a project as noteworthy with a specific, usually mnemonic, name (for instance, a version number).
Also known as: Tag (Git-specific terminology)
Examples:
  • a Git tag with its name
  • a tarball with its name
  • a Debian source package with its version number.
Revision
a "point in time" snapshot in the development history of a project.
Also known as: Commit (VCS terminology)
Examples:
  • a Git commit

S

SHA
(Secure Hash Algorithm) a family of Cryptographic hashes published by the NIST (SHA Wikipedia article)
Snapshot
the state of all visible branches during a specific visit of an origin

V

VCS
acronym for Version Control System
Examples: Git, Subversion, Mercurial