Gitwin - Git Server for Windows


Gitwin is a packaging of Git, OpenSSH, Nginx and many other related tools to make it a ready-to-use solution as a secure git repository on Windows. It supports SSH and HTTP(S) transports as well as Gitweb with Highlighter and Gravatar support.

 

Gitwin - Git server for WindowsGit is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Gitweb is a Git web interface which allows browsing a git repository (or a set of git repositories) using a web browser. OpenSSH is a free version of the SSH protocol suite of network connectivity tools. Nginx is a high performance HTTP server. Cygwin is a Linux-like environment for Windows. It consists of a DLL (cygwin1.dll), which emulates substantial Linux API functionality, and a collection of tools.

 

  Product
Git Core Ok
Git protocols supported Local, SSH, HTTP(S)
SSH server (Copssh) with admin GUI Ok 
Dedicated HTTP server (Nginx) with SSL and LDAP (Active Directory) support Ok 
Gitweb FastCGI with Highlight and Gravatar support Ok
Git Smart HTTP support via FastCGI  Ok
Perl Ok
64-bit support Ok
Ok
Ok
 

Get Gitwin!

 

Supported platforms : Windows XP/2003/Vista/2008/7/8/2012.

 

 

Gitwin comes as a ZIP file containing an installer. Simply unzip your downloaded copy and run the package "Gitwin_x.x.x_Installer.exe" :

  1. Accept License agreement.
  2. Specify an installation location.
  3. Installation starts. By clicking 'Details' button, you can get more detailed information about installation.

You have now a Windows based Git repository solution which can be accessed via ssh protocol.

Gitwin installer performs following steps:

  • Installs Copssh as OpenSSH server listening on the default ssh port 22. OpenSSH service is run by a dedicated service account with a complex password.
  • Opens tcp port 22 in the Windows firewall
  • Installs Perl
  • Creates the user git  with a complex password
  • Installs Git
Product version:
  • Install Nginx HTTP server
  • Configure Gitweb in FastCGI mode

 

 

Gitwin supports Ssh protocol:

  • You need to activate a user for ssh access. User git created by the installer can be used for that purpose. Activation is done via Copssh Control Panel.
  • Your ssh-activated user needs to be enabled for public key authentication (pka). This can be done by clicking Keys button for the selected user in the Control Panel. You can either import a public key of your own (Import button), or let the pka wizard (Add button) create a pka key pair for you.
  • Create a git repository. It is so simple as to enter the command below from the Bash shell (available from Copssh start menu):
git init --bare /home/youruser/repo-a


You can now access your newly created repository from Git clients by using the url below:

ssh://youruser@wingit-server/home/youruser/repo-a
 
 

Gitwin supports Smart HTTP(S) protocol with fallback to the dumb HTTP(S):

  • By default, neither authentication nor encrypted communication are enabled. It is strongly recommended that either basic or LDAP authentication is activated and a third party certificate is installed for secure communications.
  • By default, repositories in /home/git directory can be accessed. For read access, the file git-daemon-export-ok must exist in the repository. Authentication is strongly recommended. Following commands will clone the repository repo-a via http:
git clone http://localhost:9610/repo-a

 

Gitwin supports Gitweb with Highlight and Gravatar support, which is available via http://localhost:9610. By default, Gitweb publishes Git repositories located at /home/git directory, with the file GITWEB_EXPORT_OK file existing in their .git directories. The built-in web server supports SSL communication, as well as basic/LDAP(Active Directory) authentication. Consult Git FAQs for recipes.

 

More information:

Git on the Server - The Protocols

Gitweb

Git HTTP Backend

This package contains components with different terms of licensing:

 
Component Product
Licensing
Git Core 2.5.0 Git license  (GPL) Source code for Git is available here.
OpenSSH 7.1p OPENSSH license
Perl 5.14 Perl license
Nginx 1.7.12 Nginx license
Cygwin and GNU tools 2.0.2 CYGWIN license (GPL) Source code for Cygwin and GNU Tools are available here.
Gitwin (installer/tools)

3.3.250

(32-bit/64-bit)

Itefix EULA