我学会了如何下载没有历史记录的Git存储库(以节省磁盘空间和Internet流量)。我使用以下内容创建了文件git-no-history.bat
:
git clone --depth 1 %1
现在我需要创建文件git-check.bat
(检查我的版本是否是最后一个)和git-update.bat
(转到上一个版本)。我应该在这写什么?
如果可能,还要说明如何在TortoiseGit中执行这三项操作。
请不要Linux Bash;我没有经验。
答案 0 :(得分:0)
git-check.bat
:
@echo off
git fetch origin
if %errorlevel% neq 0 goto end
rem #get number of new commits
FOR /F "delims=" %%i IN ('git rev-list HEAD...origin/master --count') DO set numofupdates=%%i
if [%numofupdates%]==[0] goto nothing_new
rem #get list of new commits
git log HEAD..origin/master --oneline
set ask=
set /p ask=Update? (y/n)
if not [%ask%]==[y] goto nah
echo Updating...
git merge origin
echo Done!
goto end
:nah
echo Nah...
goto end
:nothing_new
echo Nothing new
goto end
:end
rem Looks like `git pull` is the same as `git fetch origin` plus `git merge origin`.
我将在没有git-update.bat
的情况下生活,它需要执行git fetch origin
两次。也许有一种方法可以获得最后一次获取的时间,但这对于蝙蝠来说太复杂了。