Git for Windows app icon

Text and code editors

Git for Windows

Git for Windows is the free GPL-licensed official Windows build of Git, bundling Git Bash, Git GUI and Windows credential tooling.

WindowsGPL-2.0-only

Git for Windows overview: the Git toolchain, adapted for Windows

What Git for Windows is

Git for Windows packages the Git version control system, which was written for Unix-like systems, into an installer that behaves sensibly on Windows. Alongside the command-line tools it ships a POSIX-style shell called Git Bash, a lightweight Git GUI, and Windows-specific plumbing such as a credential manager and a filesystem monitor that speed up status checks in large repositories. It is distributed under the GNU General Public License version 2 and is the build most Windows developers use, whether directly or through an editor that bundles it.

Working with it day to day

After installation the usual terminal for Git work is Git Bash, though the tools also run from PowerShell or the classic command prompt if you choose that PATH option during setup. The first commands are configuration ones: set your name and email, then clone or initialise a repository. From there the workflow is ordinary Git - stage, commit, branch, merge, push and pull - over HTTPS or SSH. Git Bash adds familiar Unix utilities such as ls, grep, ssh and the package manager tools that the environment provides, which makes documentation written for Linux terminals mostly transferable.

Setup choices and Windows limits

The installer asks several questions that are worth understanding rather than clicking through. The PATH option decides whether git is available only in Git Bash, everywhere from the command line, or also to third-party tools; choosing the middle or last option avoids confusion later. Line-ending handling is the classic Windows trap: repositories mixing CRLF and LF produce noisy diffs, so pick one policy and keep it consistent. Long path support and symlink creation both depend on Windows settings, and symlinks usually need Developer Mode or an elevated shell. The credential manager stores credentials in the Windows Credential Manager, so you authenticate once per host instead of retyping passwords. Git Large File Storage is offered as an optional component during setup rather than being enabled automatically.

When to choose something else

If you want version control without a command line, a graphical client built on Git gives you staging and history in a window and is friendlier for occasional use. If your work lives in a Linux environment, the Git inside WSL integrates with that filesystem and is often faster there than crossing the boundary from Windows. Teams with central software deployment will usually manage Git through their own package tooling rather than a manual installer. Choose Git for Windows when you want the reference Git behaviour and a Unix-flavoured shell on a Windows machine.

Best for
Windows developers and administrators who want the official Git command line plus a POSIX-style shell on the same machine.
Good to know
Several installer options, especially the PATH mode and line-ending policy, change daily behaviour and are easier to decide before installing.

How to get started

  1. Download the 64-bit installer and run it, reading the PATH screen carefully; the recommended choice exposes git to all terminals.
  2. Keep the default line-ending option unless your team has a policy, and select Git LFS if you work with large binary assets.
  3. Open Git Bash from the Start menu and set your identity with git config --global user.name and user.email.
  4. Clone a repository with git clone <url>, or start a new one with git init inside an empty directory.
  5. Work normally: git status, git add, git commit, git branch, then push to your remote over HTTPS or SSH.

Questions & answers

Do I have to use Git Bash?

No. The installer's PATH option makes git available from PowerShell and the command prompt as well. Git Bash is simply the shell most documentation assumes.

Why do my diffs show every line as changed?

That is a line-ending mismatch, usually CRLF against LF. Check the repository's .gitattributes and the core.autocrlf setting, then normalise the files once.

Where are my saved credentials kept?

The bundled credential manager stores them in the Windows Credential Manager after the first successful sign-in, so later pushes do not ask for a password again.

More in text and code editors

View category