mirror of
https://github.com/cmderdev/cmder.git
synced 2024-11-14 07:29:12 +08:00
fix find latest git
This commit is contained in:
parent
fc00cc8be2
commit
ce02fb4a0e
10
vendor/init.bat
vendored
10
vendor/init.bat
vendored
@ -222,7 +222,7 @@ if defined GIT_INSTALL_ROOT (
|
|||||||
if exist "%GIT_INSTALL_ROOT%\cmd\git.exe" goto :SPECIFIED_GIT
|
if exist "%GIT_INSTALL_ROOT%\cmd\git.exe" goto :SPECIFIED_GIT
|
||||||
) else if "%fast_init%" == "1" (
|
) else if "%fast_init%" == "1" (
|
||||||
if exist "%CMDER_ROOT%\vendor\git-for-windows\cmd\git.exe" (
|
if exist "%CMDER_ROOT%\vendor\git-for-windows\cmd\git.exe" (
|
||||||
%print_debug% "Skipping Git Auto-Detect!"
|
%print_debug% init.bat "Skipping Git Auto-Detect!"
|
||||||
goto :VENDORED_GIT
|
goto :VENDORED_GIT
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@ -249,22 +249,22 @@ for /F "delims=" %%F in ('where git.exe 2^>nul') do (
|
|||||||
:VENDORED_GIT
|
:VENDORED_GIT
|
||||||
if exist "%CMDER_ROOT%\vendor\git-for-windows" (
|
if exist "%CMDER_ROOT%\vendor\git-for-windows" (
|
||||||
set "GIT_INSTALL_ROOT=%CMDER_ROOT%\vendor\git-for-windows"
|
set "GIT_INSTALL_ROOT=%CMDER_ROOT%\vendor\git-for-windows"
|
||||||
%print_debug% "Using vendored Git '%GIT_VERSION_VENDORED%'..."
|
%print_debug% init.bat "Using vendored Git '%GIT_VERSION_VENDORED%'..."
|
||||||
goto :CONFIGURE_GIT
|
goto :CONFIGURE_GIT
|
||||||
) else (
|
) else (
|
||||||
goto :NO_GIT
|
goto :NO_GIT
|
||||||
)
|
)
|
||||||
|
|
||||||
:SPECIFIED_GIT
|
:SPECIFIED_GIT
|
||||||
%print_debug% "Using /GIT_INSTALL_ROOT..."
|
%print_debug% init.bat "Using /GIT_INSTALL_ROOT..."
|
||||||
goto :CONFIGURE_GIT
|
goto :CONFIGURE_GIT
|
||||||
|
|
||||||
:FOUND_GIT
|
:FOUND_GIT
|
||||||
%print_debug% "Using found Git '%GIT_VERSION_USER%' from '%GIT_INSTALL_ROOT%..."
|
%print_debug% init.bat "Using found Git '%GIT_VERSION_USER%' from '%GIT_INSTALL_ROOT%..."
|
||||||
goto :CONFIGURE_GIT
|
goto :CONFIGURE_GIT
|
||||||
|
|
||||||
:CONFIGURE_GIT
|
:CONFIGURE_GIT
|
||||||
%print_debug% "Using Git from '%GIT_INSTALL_ROOT%..."
|
%print_debug% init.bat "Using Git from '%GIT_INSTALL_ROOT%..."
|
||||||
:: Add git to the path
|
:: Add git to the path
|
||||||
if exist "%GIT_INSTALL_ROOT%\cmd\git.exe" %lib_path% enhance_path "%GIT_INSTALL_ROOT%\cmd" ""
|
if exist "%GIT_INSTALL_ROOT%\cmd\git.exe" %lib_path% enhance_path "%GIT_INSTALL_ROOT%\cmd" ""
|
||||||
|
|
||||||
|
18
vendor/lib/lib_git.cmd
vendored
18
vendor/lib/lib_git.cmd
vendored
@ -163,9 +163,9 @@ exit /b
|
|||||||
:: checks all major, minor, patch and build variables for the given arguments.
|
:: checks all major, minor, patch and build variables for the given arguments.
|
||||||
:: whichever binary that has the most recent version will be used based on the return code.
|
:: whichever binary that has the most recent version will be used based on the return code.
|
||||||
|
|
||||||
%print_debug% Comparing:
|
%print_debug% ":compare_versions" "Comparing:"
|
||||||
%print_debug% %~1: %USER_MAJOR%.%USER_MINOR%.%USER_PATCH%.%USER_BUILD%
|
%print_debug% ":compare_versions" "%~1: %USER_MAJOR%.%USER_MINOR%.%USER_PATCH%.%USER_BUILD%"
|
||||||
%print_debug% %~2: %VENDORED_MAJOR%.%VENDORED_MINOR%.%VENDORED_PATCH%.%VENDORED_BUILD%
|
%print_debug% ":compare_versions" "%~2: %VENDORED_MAJOR%.%VENDORED_MINOR%.%VENDORED_PATCH%.%VENDORED_BUILD%"
|
||||||
|
|
||||||
setlocal enabledelayedexpansion
|
setlocal enabledelayedexpansion
|
||||||
if !%~1_MAJOR! GTR !%~2_MAJOR! (endlocal & exit /b 1)
|
if !%~1_MAJOR! GTR !%~2_MAJOR! (endlocal & exit /b 1)
|
||||||
@ -233,23 +233,26 @@ exit /b
|
|||||||
setlocal enabledelayedexpansion
|
setlocal enabledelayedexpansion
|
||||||
if ERRORLEVEL 0 (
|
if ERRORLEVEL 0 (
|
||||||
:: compare the user git version against the vendored version
|
:: compare the user git version against the vendored version
|
||||||
!lib_git! compare_versions USER VENDORED
|
%lib_git% compare_versions USER VENDORED
|
||||||
|
set result=!ERRORLEVEL!
|
||||||
|
%print_debug% ":compare_git_versions" "campare versions_result: !result!"
|
||||||
|
|
||||||
:: use the user provided git if its version is greater than, or equal to the vendored git
|
:: use the user provided git if its version is greater than, or equal to the vendored git
|
||||||
if ERRORLEVEL 0 (
|
if !result! geq 0 (
|
||||||
if exist "!test_dir:~0,-4!\cmd\git.exe" (
|
if exist "!test_dir:~0,-4!\cmd\git.exe" (
|
||||||
set "GIT_INSTALL_ROOT=!test_dir:~0,-4!"
|
set "GIT_INSTALL_ROOT=!test_dir:~0,-4!"
|
||||||
) else (
|
) else (
|
||||||
set "GIT_INSTALL_ROOT=!test_dir!"
|
set "GIT_INSTALL_ROOT=!test_dir!"
|
||||||
)
|
)
|
||||||
) else (
|
) else (
|
||||||
%print_verbose% "Found old !GIT_VERSION_USER! in !test_dir!, but not using..."
|
%print_debug% ":compare_git_versions" "Found old !GIT_VERSION_USER! in !test_dir!, but not using..."
|
||||||
)
|
)
|
||||||
) else (
|
) else (
|
||||||
:: compare the user git version against the vendored version
|
:: compare the user git version against the vendored version
|
||||||
:: if the user provided git executable is not found
|
:: if the user provided git executable is not found
|
||||||
IF ERRORLEVEL -255 IF NOT ERRORLEVEL -254 (
|
IF ERRORLEVEL -255 IF NOT ERRORLEVEL -254 (
|
||||||
%print_verbose% "No git at "!git_executable!" found."
|
:: if not exist "%git_executable%" (
|
||||||
|
%print_debug% ":compare_git_versions" "No git at "%git_executable%" found."
|
||||||
set test_dir=
|
set test_dir=
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@ -272,6 +275,7 @@ exit /b
|
|||||||
:get_user_git_version
|
:get_user_git_version
|
||||||
:: get the version information for the user provided git binary
|
:: get the version information for the user provided git binary
|
||||||
%lib_git% read_version USER "%test_dir%" 2>nul
|
%lib_git% read_version USER "%test_dir%" 2>nul
|
||||||
|
%print_debug% ":get_user_git_version" "get_user_git_version GIT_VERSION_USER: %GIT_VERSION_USER%"
|
||||||
%lib_git% validate_version USER %GIT_VERSION_USER%
|
%lib_git% validate_version USER %GIT_VERSION_USER%
|
||||||
exit /b
|
exit /b
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user