Building and installing git 2.x on Windows

So Git 2.x has been out for a few months now and it came with some nice stuff, you can read more about it here

However if you are under windows, the git portage msysgit has yet to release a 2.X portage(as of this writing the latest version is 1.9.4)

If you want to install Git 2 on Windows you will need to build it from the source, and here is how it's done

1. Download the Git build environment

Head up to the Github page and download the latest version from the master branch

Unzip it let's say to c:/tmp/git/msygit-env

2. Download the latest version of git

Head up to the Github page and download the latest version from the master branch

Unzip it let's say to c:/tmp/git/git

3. Copy the git folder

Now copy the entire contents of the c:/tmp/git/git under c:/tmp/git/msygit-env/git

4. Build Git

Now you can fire up a DOS console and head up to the msysgit and build Git

cd c:/tmp/git/msygit-env

Once the build starts you should see some output similar to

Building and Installing Git
    * new build flags
    CC credential-store.o
    * new link flags
    CC abspath.o
    CC advice.o
    CC alias.o
    CC alloc.o
    CC archive.o
    CC archive-tar.o

5. Moving the binaries and updating the path

Once the build is finished you will find the git binaires under the /bin folder

So let's say for example that I want to put my git binaries under c:/dev/bin/git2 go ahead and copy the following folders from the c:/tmp/git/msygit-env/git :

  • bin
  • cmd
  • etc
  • include
  • lib
  • libexec
  • mingw
  • share
  • ssl

Please note that I don't think you actually need all those folders but I copied them all just to be sure ..

Now for the final step the PATH; you will need to add the following folders to your PATH :


Once the cmd prompt restarted you should be able to use your newly build Git

git --version
git version 2.1.0

And there you go if everything went as expected you should be running git 2.x

Popular posts from this blog

Multi-hop ssh tunnel - howto : Creating a SSH tunnel with port forwarding between multiple hosts

Spring boot and spring data jpa tutorial - A sample application using spring 4.0 spring boot and JPA (part 2/2)

MongoDB spring data $elemMatch in field projection