Add an installer for the msysgit environment

This installer:
- detects the Git installation path
- checks prereqs (git, getopt.exe)
- delete old gitflow install
- install gitflow files

"Access denied" errors are detected and the user is given advice in that case (
use full administrator rights).
diff --git a/contrib/msysgit-install.cmd b/contrib/msysgit-install.cmd
new file mode 100644
index 0000000..1285839
--- /dev/null
+++ b/contrib/msysgit-install.cmd
@@ -0,0 +1,76 @@
+@echo off

+setlocal

+if not "%~1"=="" set GIT_HOME=%~f1

+if "%GIT_HOME%"=="" call :FindGitHome "git.cmd"

+

+if exist "%GIT_HOME%" goto :GitHomeOK

+

+echo MsysGit installation directory not found.>&2

+echo Try to give the directory name on the command line:>&2

+echo   %0 "%ProgramFiles%\Git"

+endlocal

+exit /B 1

+

+:GitHomeOK

+set ERR=0

+

+echo Installing gitflow into "%GIT_HOME%"...

+

+call :ChkGetopt getopt.exe || set ERR=1

+if %ERR%==1 goto :End

+echo getopt.exe... Found

+

+if not exist "%GIT_HOME%\bin\git-flow" goto :Install

+echo GitFlow is already installed.>&2

+choice /C YN /M "Do you want to replace it"

+if errorlevel 255 goto :Abort

+if errorlevel 2 goto :Abort

+if not errorlevel 1 goto :Abort

+

+echo Deleting old files...

+for /F %%i in ("%GIT_HOME%\git-flow*" "%GIT_HOME%\gitflow-*") do if exist "%%~fi" del /F /Q "%%~fi"

+

+:Install

+echo Copying files...

+::goto :EOF

+xcopy "%~dp0\..\git-flow"            "%GIT_HOME%\bin"                 /Y /R /F

+if errorlevel 4 if not errorlevel 5 goto :AccessDenied

+if errorlevel 1 set ERR=1

+xcopy "%~dp0\..\git-flow*"           "%GIT_HOME%\bin"                 /Y /R /F || set ERR=1

+xcopy "%~dp0\..\gitflow-*"           "%GIT_HOME%\bin"                 /Y /R /F || set ERR=1

+xcopy "%~dp0\..\shFlags\src\shflags" "%GIT_HOME%\bin\gitflow-shFlags" /Y /R /F || set ERR=1

+

+if %ERR%==1 choice /T 30 /C Y /D Y /M "Some unexpected errors happened. Sorry, you'll have to fix them by yourself."

+

+:End

+endlocal & exit /B %ERR%

+goto :EOF

+

+:AccessDenied

+set ERR=1

+echo.

+echo You should run this script with "Full Administrator" rights:>&2

+echo - Right-click with Shift on the script from the Explorer>&2

+echo - Select "Run as administrator">&2

+choice /T 30 /C YN /D Y /N >nul

+goto :End

+

+:Abort

+echo Installation canceled.>&2

+set ERR=1

+goto :End

+

+:ChkGetopt

+:: %1 is getopt.exe

+if exist "%GIT_HOME%\bin\%1" goto :EOF

+if exist "%~f$PATH:1" goto :EOF

+echo %GIT_HOME%\bin\%1 not found.>&2

+echo You have to install this file manually. See the GitFlow README.

+exit /B 1

+

+:FindGitHome

+setlocal

+set GIT_CMD_DIR=%~dp$PATH:1

+if "%GIT_CMD_DIR%"=="" endlocal & goto :EOF

+endlocal & set GIT_HOME=%GIT_CMD_DIR:~0,-5%

+goto :EOF