You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub中按类型将仓库归类到不同文件夹?

在GitHub实现项目归类的可行方案

一、用组织(Organization)模拟文件夹分组

GitHub个人账号没有原生的仓库文件夹功能,但可以通过创建组织来实现归类:

  • 针对不同类别创建对应组织,比如你的用户名-Documents、你的用户名-Packages、你的用户名-Gists
  • 将对应类型的仓库转移到对应组织下,GitHub主页会以组织为单位展示分组后的仓库
  • 远程路径更新:仓库转移后,本地仓库需执行以下命令修改远程地址:
    git remote set-url origin git@github.com:组织名/仓库名.git
    

二、单仓库多文件夹结构(适合小型项目集合)

如果不想创建多个组织,可将同类型项目整合到同一个仓库的子文件夹中:

1. 新建父仓库并整理项目

  • 本地创建父文件夹(如My-Gists),初始化仓库:
    mkdir My-Gists && cd My-Gists
    git init
    
  • 将目标项目文件夹复制到该父目录,提交并推送到GitHub:
    git add .
    git commit -m "Add all projects"
    git remote add origin git@github.com:你的用户名/My-Gists.git
    git push -u origin main
    

2. 合并现有独立仓库到父结构

如果已有独立仓库要加入父文件夹:

  • 保持原仓库版本控制的话,用子模块方式添加:
    # 进入父仓库目录
    git submodule add git@github.com:你的用户名/现有仓库名.git 目标子文件夹名
    
  • 若无需保留原仓库完整历史,直接将文件复制到父仓库对应文件夹后提交即可

三、Gists的批量归类方法

Gists是独立的代码片段仓库,可通过以下方式归类:

  • 创建专门的仓库(如All-My-Gists),将每个Gist克隆到该仓库的子文件夹:
    mkdir -p gists/某个Gist名称
    git clone https://gist.github.com/你的GistID.git gists/某个Gist名称
    
  • 用bash脚本批量同步所有Gists(需先安装GitHub官方gh命令行工具并登录):
    #!/bin/bash
    # 批量克隆所有Gists到本地Gists文件夹
    mkdir -p All-Gists && cd All-Gists
    gh gist list --limit 100 | while read -r line; do
        gist_id=$(echo "$line" | awk '{print $1}')
        gist_name=$(echo "$line" | awk '{print $2}')
        git clone https://gist.github.com/$gist_id.git "$gist_name"
    done
    
    执行脚本后,将该文件夹提交到专门的Gists仓库即可。

四、轻量替代:用主题标签(Topics)筛选归类

如果不想调整仓库结构,可给每个仓库添加对应主题标签(如documents、packages、gists),GitHub会自动按标签分组展示仓库,在个人主页搜索标签即可快速筛选同类项目。


内容的提问来源于stack exchange,提问作者iPadawan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 11:04:58