批量拉取所有子目录 git pull --all
Posted 笑虾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量拉取所有子目录 git pull --all相关的知识,希望对你有一定的参考价值。
递归 git pull --all 所有子文件夹
当项目太多时,全都拉取一下,也很麻烦,直接用这个批处理就好了。
:: 解决读取文件内容中文乱码的问题。当前bat需要保存为utf-8
chcp 65001>nul
:: 递归遍历当前路径下所有目录,执行 git pull --all
:: 2022-11-25 笑虾
@ECHO OFF
TITLE 批量 git pull —— 耀眼的笨笨
:: 使用COLOR命令对控制台输出颜色进行更改
COLOR 2f
CLS
:: 文件夹,拖拽到批处理上即可获取路径。
SET CURRENT_DIR=%~1
:: 如果没有获取到,则获取当前路径
if not defined CURRENT_DIR (
SET CURRENT_DIR=%~dp0
)
ECHO ####################################################
ECHO #
ECHO # 当前目录: %CURRENT_DIR%
ECHO # 开始批量执行 git pull --all
ECHO #
ECHO ####################################################
ECHO.
:: dir 递归查询当前目录下所有子目录,每个结果赋给 i
:: /b 使用空格式(没有标题信息或摘要,只有名称)。
:: /s 显示指定目录和所有子目录中的文件。
:: /ad a显示具有指定属性的文件, d目录
for /f %%i in ('dir /b /s /ad "%CURRENT_DIR%"') do (
:: 如果指定目录下包含 .git 目录,执行 pull
IF EXIST %%i\\.git (
echo ===============================================
echo 开始拉取: %%i
echo on
git -C "%%i" pull --all
echo.
echo.
echo off
)
)
echo 批量拉取完成!
pause
参考资料
笑虾:BAT 学习笔记
博客园-代码诠释的世界-【win10】批量更新某个目录下的git项目
博客园-QIAOXINGXING001-批量清理java源码的target目录
以上是关于批量拉取所有子目录 git pull --all的主要内容,如果未能解决你的问题,请参考以下文章
git在windows下切换(checkout)分支拉取(pull)最新代码
GIT05_远程仓库操作查看添加克隆clone移除rm拉取pull推送push