Git: distributed version control system
Git is a fast, distributed version control system for tracking changes in source code. Created by Linus Torvalds, it emphasizes branching, integrity, speed and collaboration under a free open-source license.
Git is a distributed version control system designed to record changes to files and coordinate work among multiple people. As a software tool, Git tracks snapshots of a project over time, allowing developers to inspect history, revert unwanted changes, and collaborate without a single centralized server. It was originally written by Linus Torvalds to support the development of the Linux kernel and is maintained by a community led by Junio Hamano.
Overview and purpose: Git's model differs from older version control systems by storing a full history as a series of snapshots rather than a sequence of file-based deltas. This design contributes to performance and makes many operations local and fast. The system supports branching and merging as inexpensive, everyday actions, which encourages experimentation and parallel work.
Image gallery
2 ImagesCore concepts
- Commits: immutable snapshots identified by checksums; each commit records a tree of project files and metadata.
- Branches: lightweight pointers to commits that enable independent lines of development.
- Index (staging area): an intermediate area for assembling the next commit.
- Remotes: named repositories on other machines; pushing and pulling synchronize changes between clones.
- Integrity: content-addressable storage and cryptographic hashes protect history from silent corruption.
Typical workflow and examples: A common cycle is edit → stage → commit locally, then push to a shared remote so others can fetch and merge. Branching is often used to develop features or fixes without affecting the main line; when ready, branches are merged or integrated through rebasing. Because most operations are performed locally, developers can work offline and run history inspections or comparisons very quickly.
History and licensing: Git was created to meet the needs of large-scale, fast development of the Linux kernel and has since become a dominant tool for many software projects and other collaborative text workflows. The project is distributed as free and open-source software and is released under the GNU General Public License, version 2. Its development and ecosystem include command-line tools, graphical clients, and numerous hosting services that build on Git's model.
Notable distinctions and practical notes: Git is not a backup system but a specialized history tracker; its strength lies in fast local operations, strong integrity guarantees, and flexible branching. Learning core commands (clone, add, commit, branch, merge, rebase, push, pull) and understanding the index and commit graph are the most important steps to using Git effectively. For further documentation and tooling, many tutorials and reference manuals exist online and in project hosting sites dedicated to collaborative development and code review workflows (project development resources).
For official project pages, how-to guides, and community resources consult the canonical sources and maintainers who continue to evolve Git's features and performance characteristics.
Related articles
Author
AlegsaOnline.com Git: distributed version control system Leandro Alegsa
URL: https://en.alegsaonline.com/art/39000
Sources
- lkml.org : "[ANNOUNCE] Git v2.10.0"
- git.kernel.org : "git/git.git/tree"
- marc.info : "Re: Kernel SCM saga.."