Fork软件笔记:一键拉取仓库所有模块

Fork是一个好用的git工具,只是没有中文而已(不过不用翻译也能看使用)。

工具下载地址:https://fork.dev/

界面展示:

当项目中仓库模块比较多时,可以看到每个模块都是一个分页,每一个都要手动切换分页拉取,比较麻烦。

这时候可以使用一些git的命令实现一次全部拉取功能。

比如Window上可以这样:

bash 复制代码
@echo off
git branch --show-current && git pull --all && echo. && git submodule foreach --recursive "git branch --show-current && git pull --all && echo."

MacOS不太清楚,不过在这里是为了推荐工具中内置的脚本工具。

打开Fork软件,依次点击:

File → Preferences... → Custom Commands → + → Add Repository Custom Command

可以在面板右边的Action选项下,选择"Sh Command"并打开"Edit Action"面板。这里顺手将Name修改为"拉取所有仓库"

在"Script"文本框中输入以下代码,可以实现Fork中的一键拉取仓库中的所有模块(包含子模块)。

bash 复制代码
#!/bin/bash

# 切换到包含.git的目录,确保脚本在仓库根目录运行
cd "$(git rev-parse --show-toplevel)"

# 获取当前分支名称
current_branch=$(git branch --show-current)

# 拉取当前分支的更新
git pull origin "$current_branch"

# 更新所有子模块的当前分支
git submodule foreach --recursive '
    cd "$0"
    # 获取子模块的当前分支名称
    submodule_current_branch=$(git branch --show-current)
    # 拉取子模块当前分支的更新
    git pull origin "$submodule_current_branch"
'

点击"Edit"后,保存代码。关闭"Preferences"窗口后,可以在工具主窗口的右上角"Open In"菜单列表中找到刚刚新加的"拉取所有仓库"。

相关推荐
黑泽明*16 分钟前
LVS-Keepalived-全解析
服务器·开发语言·笔记·学习·php
熊猫钓鱼>_>1 小时前
Seedance 2.0 技术深度解析:重构AI视频生成的世界模型新范式
人工智能·笔记·ai·重构·音视频·变革·sedence2.0
天天爱吃肉82181 小时前
【工程师硬件学习笔记:串口‑总线体系与三电试验室异构系统集成深度实战】
大数据·笔记·python·嵌入式硬件·学习·汽车
PC2005-cloud1 小时前
Git学习笔记:GitHub Git Data API 完全指南,用 Go 操控 Git 底层对象
笔记·git·学习
一米阳光86611 小时前
软考(中级)软件设计师核心笔记(8)数据结构——图
数据结构·笔记·职场发展·软考·软件设计师·中级职称
XGeFei10 小时前
【AI应用/Agent智能体搭建平台2】Dify——自部署
人工智能·笔记·学习
祈禾11 小时前
Redis三大缓存问题与分布式锁
运维·数据库·redis·笔记·分布式·缓存
IT古董14 小时前
【MES学习笔记系列】MES 厂商与产品对比
笔记·学习
wangyue_msn_8614 小时前
Agent知识学习笔记——03 RAG
笔记·学习·ai编程
嘶哈哈哈15 小时前
# 异构十电机机架数学建模:从单电机力矩到受约束控制分配
笔记