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

能否在GitHub中实现仓库嵌套?多项目独立同步方案咨询

解决Fiverr多项目Git同步:保持层级且项目独立的方案

针对你遇到的「本地Fiverr根目录下多项目需同步,既要保持层级又要项目独立Git管理」的问题,以下是三种可行的解决方案:

1. Git 子模块(Submodules)

这是Git官方提供的多仓库嵌套管理方案,能让你在Fiverr根目录的主仓库中,将每个项目文件夹作为独立的子仓库存在:

  • 初始化主仓库:
    在本地Fiverr根目录执行:
    git init
    # 创建.gitignore,排除临时文件、依赖包等不需要同步的内容
    echo "node_modules/" >> .gitignore
    echo ".DS_Store" >> .gitignore
    git add .gitignore
    git commit -m "Initialize Fiverr root repo"
    # 推送到GitHub的主仓库(比如命名为fiverr-projects)
    git remote add origin <你的GitHub主仓库URL>
    git push -u origin main
    
  • 添加项目子模块:
    先把每个本地项目单独推送到GitHub的独立仓库,然后在Fiverr根目录执行:
    git submodule add <项目的GitHub仓库URL> ./<项目文件夹名>
    # 提交子模块关联信息到主仓库
    git add .gitmodules ./<项目文件夹名>
    git commit -m "Add <项目名> as submodule"
    git push
    
  • 同步操作:
    克隆主仓库时需拉取子模块:
    git clone --recurse-submodules <主仓库URL>
    
    已克隆的仓库更新子模块:
    git submodule update --init --recursive
    
    单个项目的修改直接进入对应文件夹执行git pull/push,主仓库仅跟踪子模块的最新提交哈希。

优缺点:严格保持本地与GitHub的层级结构,版本跟踪清晰;但子模块操作有一定学习成本,分支切换时需额外同步子模块状态。

2. Git Repo 多仓库管理工具

如果你的项目数量较多,Google开发的git-repo工具能帮你批量管理多个独立仓库,同时保持本地层级:

  • 安装与配置:
    根据系统安装git-repo(Linux用apt install repo,Mac用brew install repo),然后在Fiverr根目录创建manifest.xml配置文件:
    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
      <remote name="github" fetch="https://github.com/你的GitHub用户名" />
      <default remote="github" revision="main" />
      <!-- 逐个添加项目,name是GitHub仓库名,path是本地文件夹名 -->
      <project name="fiverr-client-A" path="client-A-project" />
      <project name="fiverr-client-B" path="client-B-project" />
    </manifest>
    
    将manifest.xml推送到GitHub的一个独立仓库(比如fiverr-manifest)。
  • 同步项目:
    在Fiverr根目录执行:
    repo init -u <manifest仓库的GitHub URL>
    repo sync
    
    批量更新所有项目:
    repo forall -c 'git pull origin main'
    

优缺点:批量操作高效,适合大量项目;但需要额外安装工具,配置manifest文件有一定门槛。

3. 手动独立仓库+GitHub分组整理

如果不想用复杂工具,可直接给每个项目建独立仓库,通过GitHub的命名规则整理仓库列表:

  • 操作步骤:
    每个本地项目文件夹单独执行git init、关联GitHub仓库并推送,Fiverr根目录无需作为仓库。
  • 整理GitHub仓库列表:
    给所有Fiverr项目的仓库命名统一前缀(比如fiverr-xxx),在GitHub仓库页面通过搜索前缀快速筛选;也可给仓库添加fiverr-project标签,通过标签分组查看。

优缺点:操作简单无额外依赖;但需手动逐个同步项目,根目录无统一的版本跟踪记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 10:50:21