Git is an open-source distributed version control system (DVCS). Use this tag for questions related to Git usage and workflows. DO NOT USE [github] tag for Git-related issues simply because a repository happens to be hosted on GitHub. Also, do not use this tag for general programming questions that happen to involve a Git repository.
Git is an open-source distributed version control system (dvcs) with an emphasis on speed. git was initially designed and developed by Linus Torvalds for linux kernel development, now it is maintained by Junio Hamano. Every Git working directory contains a full-fledged repository with complete history and full revision tracking capabilities, not dependent on network access or a central server.
The latest stable version is 2.28.0, released on 27 July, 2020.
There are many resources and tutorials available free online for git beginners; see the bottom of this page for links to some of these resources.
- Strong support for non-linear development
- Distributed development
- Compatibility with existing systems/protocols
- Efficient handling of large projects
- Cryptographic authentication of history
- Toolkit-based design
- Pluggable merge strategies
- Garbage accumulates unless collected
- Periodic explicit object packing
- Data Assurance
Working with the code
Tagging, branching, releases, baselines
- msysgit - Cross platform, included with Git
- gitk - Cross platform history viewer, included with Git
- RepoZ - Zero-effort repository hub to track and access local Git repositories for Windows and macOS
- gitnub - macOS
- gitx - macOS history viewer
- smartgit - Cross platform, commercial, beta
- tig - console GUI for Linux
- qgit - GUI for Windows, Linux
- Git Extensions - package for Windows, includes friendly GUI
- SourceTree - A free Git & Mercurial client for Windows or macOS
- posh-git - A Windows PowerShell environment for Git
- TortoiseGit - A Windows Explorer extension with overlay icons representing the file statuses in explorer
- GitKraken - A fancy, cross-platform Git client
Clients that are primarily used for GitHub but also support Git
Other Git beginner's references
There are also good guides if you would like to understand Git conceptually or if you would like to compare other revision control software such as subversion.
Free Git hosting
Codeschool Git Tutorial - Build a solid foundation in Git
Git Tutorial Playlist - Beginner's Guide for Git
git-flow gitignore gitconfig
The Stack Overflow
git chat is useful for coordinating work within this tag, and perhaps occasionally for getting quick help (though no guarantees can be made; attendance is spotty).