Git is available for *nix operating systems, as well as MacOS and Windows.
Binary[edit | edit source]
Linux[edit | edit source]
Debian-based distributions (.deb)[edit | edit source]
Git is available on Debian, and derivatives like Ubuntu. It is currently packaged as
git. More recent packages of git are available from the Ubuntu Git Maintainers' PPA. You may also want to install some extended git functionality, for example git-svn, which allows two-way interoperability with Subversion, or git-email which provides utility functions for sending and receiving git data (primarily patches) via email.
$ sudo apt-get install git git-svn git-email
RPM-based distributions (.rpm)[edit | edit source]
Linux distributions using the RPM package format can use yum to get git:
$ sudo yum install git-core
macOS[edit | edit source]
A graphical installer can be found at Google code. Alternative, if you have MacPorts installed, you can do
$ sudo port install git-core
git is also included in the com.apple.pkg.Core package:
pkgutil --file-info `which git` volume: / path: /usr/bin/git pkgid: com.apple.pkg.Core pkg-version: 10.13.4.1.1.1522206870 install-time: 1526062261 uid: 0 gid: 0 mode: 755
Windows[edit | edit source]
Git for Windows is available as a precompiled binary msysGit. This includes the command line utilities, a GUI, and an SSH client.
Additionally, those with Cygwin can use its setup to obtain Git.
Source[edit | edit source]
Tarball[edit | edit source]
You can obtain a copy of the newest stable git from the git homepage at: git.or.cz. In addition, daily snapshots of git are provided by Dave Jones.
Below is an example of how to compile git from source, change "git-126.96.36.199.tar.gz" to the version you downloaded:
mkdir ~/src cd ~/src wget http://kernel.org/pub/software/scm/git/git-188.8.131.52.tar.gz tar xzvf git-184.108.40.206.tar.gz cd git-220.127.116.11 make configure ./configure --prefix=/usr/local make sudo make install
Without the added
--prefix argument git will currently install to
~/bin. This may or may not be what you want, in most distributions
~/bin is not in the $PATH. Without the --prefix, you might have to explicitly state the path to the component programs on invocation, i.e.:
~/bin/git-add foobar. You can set
--prefix to whatever better suits your particular setup.
Git[edit | edit source]
The source can additionally be acquired via git using:
$ git clone git://git.kernel.org/pub/scm/git/git.git
Or in the event you have problems with the default Git port of 9418:
$ git clone http://www.kernel.org/pub/scm/git/git.git
First configuration[edit | edit source]
To avoid to reenter one's credential during each sync, register the account:
git config --global user.email "firstname.lastname@example.org" git config --global user.name "Michael Boudran"
To check the config:
git config -l
To avoid the password in Linux, it's necessary to store it in plain text into:
With (ex: for github.com):
machine github.com login <user> password <password>
Please note that GitHub no longer use's Username and Password for authentication since September 2021. Instead, GitHub uses Authentication Tokens generated on https://github.com/settings/tokens. A replacement for the above example would be:
machine github.com login <user> password <token>
Other Git clients[edit | edit source]
Some integrated development environments like NetBeans or PhpStorm also provide or complete Git client.
TortoiseGit allows to access to its Git commands by right-clicking on the concerned files and folders.
Footnotes[edit | edit source]
- ^ One effort to amend the lack of consistency through modern distributions and
~/bin, has been addressed by the Ubuntu developers which seeks to patch PAM, the authentication mechanism, to set up the environmental variable
$PATH. You can find more information out about this at https://bugs.launchpad.net/ubuntu/+source/pam/+bug/64064.