gitdeck 是一个零依赖的终端界面工具,用于管理单个目录下的多个 Git 仓库,支持批量及单个仓库的状态查看、拉取、推送、提交、获取和自定义 Git 命令等操作。

Stars

21

7 天增长

暂无数据

Fork 数

2

开放 Issue

0

开源协议

MIT

最近更新

2026-07-12

AI 仓库情报摘要
FR-AI / ANALYSIS

为什么值得关注

它通过键盘驱动的轻量级界面,无需额外依赖即可批量执行 Git 操作,特别适合同时管理多个项目的开发者。

适合谁使用

  • 管理多个 Git 仓库的开发者
  • 维护大量 Git 项目的系统管理员
  • 需要快速批量执行 Git 操作的 CI/CD 工程师
  • 经常处理多个独立 Git 仓库的人员

典型使用场景

  • 在开始工作前批量拉取项目文件夹中的所有仓库
  • 快速浏览多个仓库的干净/脏状态
  • 通过单一按键组合在多个仓库中暂存并提交更改
  • 无需离开终端即可对选中仓库执行临时 Git 命令(如 diff、log)

项目优势

  • 零外部依赖——仅需 Python 和 Git
  • 通过配置文件高度自定义按键绑定和颜色主题
  • 支持批量操作(全部拉取、全部推送、提交所有脏仓库)及单个仓库精细控制
  • 清晰的图例,以颜色标记行状态,并显示暂存/修改/冲突文件的详细计数

使用前须知

  • 嵌套仓库(如子模块)被有意跳过,如需包含则需指定更窄的根目录
  • 远程可达性仅在被请求时检查(按 n/N 键),不会自动检测
  • 提交命令总是使用 git add -A 暂存所有更改,不适合需要选择性暂存的工作流程

README 快速开始

gitdeck

gitdeck is a dependency-free terminal UI for managing multiple Git repositories under a folder.

It scans a root directory, lists every Git working tree it finds, and lets you refresh status, check remotes, pull, push, commit, fetch, and inspect status/logs for one repository or all repositories.

Run

Recommended from a checkout:

uv run gitdeck /path/to/projects

For example:

uv run gitdeck ~/git

You can also run the module directly:

python -m gitdeck /path/to/projects

From a checkout:

PYTHONPATH=src python -m gitdeck ~/git

Or install it locally:

python -m pip install -e .
gitdeck ~/git

Keys

KeyAction
qQuit
j / DownMove selection down
k / UpMove selection up
gJump to first repository
GJump to last repository
rRefresh status for all repositories
nCheck selected repository remote reachability
NCheck all repository remotes
sShow git status --short --branch for selected repository
:Run a custom Git command in the selected repository
Enter / vView changed files for selected repository
iCreate or edit selected repository .gitignore
lShow recent commits for selected repository
fFetch selected repository
FFetch all repositories
pPull selected repository
PPull all repositories
uPush selected repository
UPush all repositories
cCommit selected repository with git add -A; press p on the result screen to push
CCommit all dirty repositories with git add -A; press p on the result screen to push successful commits
?Show help

File View Keys

Press Enter on a repository to inspect its changed files. v also works.

KeyAction
j / DownMove selection down
k / UpMove selection up
gJump to first file
GJump to last file
Space / aStage selected file
AStage all files in the repository immediately
xUnstage selected file
XUnstage all files in the repository
cCommit this repository with git add -A; press p on the result screen to push
pPull this repository
uPush this repository
:Run a custom Git command in this repository
b /

项目描述

Gitdeck is a terminal UI for managing multiple Git repositories under one folder. It scans a workspace, shows each repo’s status, and lets you pull, push, commit, inspect changes and check remotes from one keyboard-driven interface.

相关仓库与替代方案

根据分类、Topic 和编程语言匹配的相似项目。

jamesob
精选
jamesob GitHub avatar

local-llm

A comprehensive guide for building and configuring a high-end local machine to run state-of-the-art LLMs, with detailed hardware choices, BIOS tuning, and Docker-based model serving.

AI 与机器学习大语言模型
1,660
0xwilliamortiz
精选
0xwilliamortiz GitHub avatar

openclaude-improved

OpenClaude is an open-source CLI coding agent that runs on any platform and supports a wide range of LLM providers, offering the same tools and workflows as Claude Code.

AI 与机器学习大语言模型
577
l0ng-ai
精选
l0ng-ai GitHub avatar

tty7

tty7 is a fast, GPU-accelerated terminal workbench with persistent sessions, built-in input tools, SSH support, and coding agent awareness.

开发者工具CLI 与终端
359