diff --git a/bootstrap/win/git-bash.template.sh b/bootstrap/win/git-bash.template.sh
new file mode 100644
index 0000000..d1e9aee
--- /dev/null
+++ b/bootstrap/win/git-bash.template.sh
@@ -0,0 +1,12 @@
+#!/usr/bin/env bash
+export EDITOR=${EDITOR:=notepad}
+WIN_BASE=`dirname $0`
+UNIX_BASE=`cygpath "$WIN_BASE"`
+export PATH=$PATH:$UNIX_BASE/PYTHON_BIN_DIR:$UNIX_BASE/PYTHON_BIN_DIR/Scripts
+export PYTHON_DIRECT=1
+export PYTHONUNBUFFERED=1
+if [[ $# > 0 ]]; then
+  $UNIX_BASE/GIT_BIN_DIR/bin/bash.exe "$@"
+else
+  $UNIX_BASE/GIT_BIN_DIR/git-bash.exe &
+fi
diff --git a/bootstrap/win/git.template.bat b/bootstrap/win/git.template.bat
new file mode 100644
index 0000000..d3b9cbc
--- /dev/null
+++ b/bootstrap/win/git.template.bat
@@ -0,0 +1,5 @@
+@echo off
+setlocal
+if not defined EDITOR set EDITOR=notepad
+set PATH=%~dp0GIT_BIN_DIR\cmd;%PATH%
+"%~dp0GIT_BIN_DIR\GIT_PROGRAM" %*
diff --git a/bootstrap/win/win_tools.bat b/bootstrap/win/win_tools.bat
index 67c0542..0a512c9 100644
--- a/bootstrap/win/win_tools.bat
+++ b/bootstrap/win/win_tools.bat
@@ -3,8 +3,8 @@
 :: Use of this source code is governed by a BSD-style license that can be
 :: found in the LICENSE file.
 
-:: This script will try to find if svn and python are accessible and it not,
-:: it will try to download it and 'install' it in depot_tools.
+:: This script will determine if python or git binaries need updates.  It
+:: returns 123 if the user's shell must restart, otherwise !0 is failure
 
 :: Sadly, we can't use SETLOCAL here otherwise it ERRORLEVEL is not correctly
 :: returned.
@@ -56,76 +56,129 @@
 set ERRORLEVEL=1
 goto :END
 
+
 :GIT_CHECK
-if "%DEPOT_TOOLS_GIT_BLEEDING%" == "1" (
-  set GIT_VERSION=1.9.5.chromium.6
+
+:: must explicitly use FIND_EXE to prevent this from grabbing e.g. gnuwin32 or
+:: msys versions.
+set FIND_EXE=%SYSTEMROOT%\System32\find.exe
+
+:: Check to see if we're on a 32 or 64 bit system
+:: (parens) are necessary, otherwise batch puts an extra space after 32.
+reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" | %FIND_EXE% /i "x86" > NUL && (set OS_BITS=32) || (set OS_BITS=64)
+
+if not exist "%WIN_TOOLS_ROOT_DIR%\.git_bleeding_edge" (
+  set GIT_VERSION=2.10.0
 ) else (
-  set GIT_VERSION=1.9.5.chromium.6
+  set GIT_VERSION=2.8.3
 )
-for /f "tokens=2 delims=[]" %%i in ('ver') do set VERSTR=%%i
-for /f "tokens=2,3 delims=. " %%i in ("%VERSTR%") do (set VERMAJOR=%%i & set VERMINOR=%%j)
-if %VERMAJOR% lss 5 set GIT_VERSION=%GIT_VERSION%-xp
-if %VERMAJOR% equ 5 if %VERMINOR% lss 2 set GIT_VERSION=%GIT_VERSION%-xp
+set GIT_VERSION=%GIT_VERSION%-%OS_BITS%
+
+set GIT_FETCH_URL=https://storage.googleapis.com/chrome-infra/PortableGit-%GIT_VERSION%-bit.7z.exe
+set GIT_DOWNLOAD_PATH=%ZIP_DIR%\git.7z.exe
+set GIT_BIN_DIR=git-%GIT_VERSION%_bin
+set GIT_INST_DIR=%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%
+set GIT_EXE_PATH=%GIT_INST_DIR%\bin\git.exe
 
 :: Clean up any release which doesn't match the one we want.
-for /d %%i in (%WIN_TOOLS_ROOT_DIR%\git-*_bin) do (
-  if not %%i == %WIN_TOOLS_ROOT_DIR%\git-%GIT_VERSION%_bin (
-    rmdir /s /q "%%i"
+for /d %%i in ("%WIN_TOOLS_ROOT_DIR%\git-*_bin") do (
+  if not "%%i" == "%WIN_TOOLS_ROOT_DIR%\git-%GIT_VERSION%_bin" (
+    echo Cleaning old git installation %%i
+    rmdir /s /q "%%i" > NUL
   )
 )
-set GIT_BIN_DIR=git-%GIT_VERSION%_bin
-set GIT_ZIP_FILE=%GIT_BIN_DIR%.zip
-set GIT_ZIP_URL=https://commondatastorage.googleapis.com/chrome-infra/%GIT_ZIP_FILE%
 
 if "%WIN_TOOLS_FORCE%" == "1" goto :GIT_INSTALL
-if exist "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\cmd\git.cmd" (
-  call "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\cmd\git.cmd" --version 2>nul 1>nul
-  if errorlevel 1 goto :GIT_INSTALL
-  rem Several git versions can live side-by-side; check the top-level
-  rem batch script to make sure it points to the desired version.
-  find "%GIT_BIN_DIR%" "%WIN_TOOLS_ROOT_DIR%\git.bat" 2>nul 1>nul
-  if errorlevel 1 goto :GIT_COPY_BATCH_FILES
-  goto :END
-)
-goto :GIT_INSTALL
 
+if not exist "%GIT_EXE_PATH%" goto :GIT_INSTALL
+
+call "%GIT_EXE_PATH%" --version 2>nul 1>nul
+if errorlevel 1 goto :GIT_INSTALL
+
+:: Several git versions can live side-by-side; check the top-level
+:: batch script to make sure it points to the desired version.
+for %%f in (git.bat gitk.bat ssh.bat ssh-keygen.bat git-bash) do (
+  %FIND_EXE% "%GIT_BIN_DIR%" "%WIN_TOOLS_ROOT_DIR%\%%f" 2>nul 1>nul
+  if errorlevel 1 goto :GIT_MAKE_BATCH_FILES
+)
+if not exist %GIT_INST_DIR%\etc\profile.d\python.sh goto :GIT_MAKE_BATCH_FILES
+goto :SYNC_GIT_HELP_FILES
 
 :GIT_INSTALL
 echo Installing git %GIT_VERSION% (avg 1-2 min download) ...
-:: git is not accessible; check it out and create 'proxy' files.
-if exist "%ZIP_DIR%\git.zip" del "%ZIP_DIR%\git.zip"
-echo Fetching from %GIT_ZIP_URL%
-cscript //nologo //e:jscript "%~dp0get_file.js" %GIT_ZIP_URL% "%ZIP_DIR%\git.zip"
-if errorlevel 1 goto :GIT_FAIL
-:: Cleanup svn directory if it was existing.
-if exist "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\." rd /q /s "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%"
-:: Will create %GIT_BIN_DIR%\...
-cscript //nologo //e:jscript "%~dp0unzip.js" "%ZIP_DIR%\git.zip" "%WIN_TOOLS_ROOT_DIR%"
-if errorlevel 1 goto :GIT_FAIL
-if not exist "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\." goto :GIT_FAIL
-del "%ZIP_DIR%\git.zip"
-goto :GIT_COPY_BATCH_FILES
 
+if exist "%GIT_DOWNLOAD_PATH%" del "%GIT_DOWNLOAD_PATH%"
+echo Fetching from %GIT_FETCH_URL%
+cscript //nologo //e:jscript "%~dp0get_file.js" %GIT_FETCH_URL% "%GIT_DOWNLOAD_PATH%"
+if errorlevel 1 goto :GIT_FAIL
+:: Cleanup git directory if it already exists.
+if exist "%GIT_INST_DIR%\." rd /q /s "%GIT_INST_DIR%"
 
-:GIT_COPY_BATCH_FILES
+:: run PortableGit self-extractor
+:: -y : Be Quiet ("yes")
+:: -sd1 : Self delete SFX archive
+:: -InstallPath : Where to put the files
+:: -Directory : Run the post-extract program with this current-working-directory
+::
+:: Path slashes must be escaped or the 7zip sfx treats e.g. path\to\dir as
+::   path[tab]o\dir.
+set GIT_INST_DIR_ESC=%GIT_INST_DIR:\=\\%
+call "%GIT_DOWNLOAD_PATH%" -y -sd1 -InstallPath="%GIT_INST_DIR_ESC%" -Directory="%GIT_INST_DIR_ESC%"
+if errorlevel 1 goto :GIT_FAIL
+
+del "%GIT_DOWNLOAD_PATH%"
+if not exist "%GIT_INST_DIR%\." goto :GIT_FAIL
+
+set DID_UPGRADE=1
+
+:GIT_MAKE_BATCH_FILES
 :: Create the batch files.
-call copy /y "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\git.bat" "%WIN_TOOLS_ROOT_DIR%\git.bat" 1>nul
-call copy /y "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\gitk.bat" "%WIN_TOOLS_ROOT_DIR%\gitk.bat" 1>nul
-call copy /y "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\ssh.bat" "%WIN_TOOLS_ROOT_DIR%\ssh.bat" 1>nul
-call copy /y "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\ssh-keygen.bat" "%WIN_TOOLS_ROOT_DIR%\ssh-keygen.bat" 1>nul
+set GIT_TEMPL=%~dp0git.template.bat
+set SED=%GIT_INST_DIR%\usr\bin\sed.exe
+call "%SED%" -e "s/GIT_BIN_DIR/%GIT_BIN_DIR%/g" -e "s/GIT_PROGRAM/cmd\\\\git.exe/g" < %GIT_TEMPL% > "%WIN_TOOLS_ROOT_DIR%\git.bat"
+call "%SED%" -e "s/GIT_BIN_DIR/%GIT_BIN_DIR%/g" -e "s/GIT_PROGRAM/cmd\\\\gitk.exe/g" < %GIT_TEMPL% > "%WIN_TOOLS_ROOT_DIR%\gitk.bat"
+call "%SED%" -e "s/GIT_BIN_DIR/%GIT_BIN_DIR%/g" -e "s/GIT_PROGRAM/usr\\\\bin\\\\ssh.exe/g" < %GIT_TEMPL% > "%WIN_TOOLS_ROOT_DIR%\ssh.bat"
+call "%SED%" -e "s/GIT_BIN_DIR/%GIT_BIN_DIR%/g" -e "s/GIT_PROGRAM/usr\\\\bin\\\\ssh-keygen.exe/g" < %GIT_TEMPL% > "%WIN_TOOLS_ROOT_DIR%\ssh-keygen.bat"
+call "%SED%" -e "s/GIT_BIN_DIR/%GIT_BIN_DIR%/g" -e "s/PYTHON_BIN_DIR/python276_bin/g" < %~dp0git-bash.template.sh > "%WIN_TOOLS_ROOT_DIR%\git-bash"
+copy "%~dp0profile.d.python.sh" %GIT_INST_DIR%\etc\profile.d\python.sh > NUL
 
-:: Ensure autocrlf and filemode are set correctly.
-call "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\cmd\git.cmd" config --system core.autocrlf false
-call "%WIN_TOOLS_ROOT_DIR%\%GIT_BIN_DIR%\cmd\git.cmd" config --system core.filemode false
+:: Ensure various git configurations are set correctly at they system level.
+call "%WIN_TOOLS_ROOT_DIR%\git.bat" config --system core.autocrlf false
+call "%WIN_TOOLS_ROOT_DIR%\git.bat" config --system core.filemode false
+call "%WIN_TOOLS_ROOT_DIR%\git.bat" config --system core.preloadindex true
+call "%WIN_TOOLS_ROOT_DIR%\git.bat" config --system core.fscache true
+
+:SYNC_GIT_HELP_FILES
+:: Copy all the depot_tools docs into the mingw64 git docs root.
+:: /i : Make sure xcopy knows that the destination names a folder, not a file
+:: /q : Make xcopy quiet (though it still prints a `X File(s) copied` message
+::      which is why we have the > NUL)
+:: /d : Copy source files that are newer than the corresponding destination
+::      files only. This prevents excessive copying when none of the docs
+::      actually changed.
+:: /y : Don't prompt for overwrites (yes)
+xcopy /i /q /d /y "%WIN_TOOLS_ROOT_DIR%\man\html\*" "%GIT_INST_DIR%\mingw64\share\doc\git-doc" > NUL
+
+:: MSYS users need to restart their shell.
+if defined MSYSTEM if defined DID_UPGRADE (
+  echo.
+  echo.
+  echo IMPORTANT:
+  echo depot_tools' git distribution has been updated while inside of a MinGW
+  echo shell. In order to complete the upgrade, please exit the shell and re-run
+  echo `git bash`.
+  exit 123
+)
+
 goto :END
 
-
 :GIT_FAIL
 echo ... Failed to checkout git automatically.
-echo You should get the "prebaked" version used at %GIT_ZIP_URL%
+echo You should get the "prebaked" version used at %GIT_FETCH_URL%
 set ERRORLEVEL=1
 goto :END
 
+
 :returncode
 set WIN_TOOLS_ROOT_URL=
 set WIN_TOOLS_ROOT_DIR=
