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

如何将GitHub上的Java Spring与React仓库合并为单仓库的两个文件夹?

合并两个GitHub仓库到同一仓库(分文件夹存放)

下面两种方法都能实现把Java Spring仓库(A)和React仓库(B)合并到一个仓库,各自存放在独立文件夹里:

方法一:新建空仓库作为合并目标

  • 先在GitHub上创建一个空仓库,比如命名为full-stack-project
  • 本地克隆这个新仓库:
    git clone git@github.com:你的用户名/full-stack-project.git
    cd full-stack-project
    
  • 导入仓库A的代码到java-spring文件夹:
    # 添加仓库A作为远程源
    git remote add repo-a git@github.com:你的用户名/repo-a.git
    git fetch repo-a
    # 拉取仓库A的主分支代码到本地
    git checkout repo-a/main -- .
    # 创建java-spring文件夹,把所有文件移进去
    mkdir java-spring
    # bash环境下用这个命令,Windows请手动移动或用PowerShell命令
    git mv !(java-spring) java-spring/
    # 提交修改
    git add .
    git commit -m "迁移Java Spring仓库代码到java-spring文件夹"
    
  • 导入仓库B的代码到react文件夹:
    # 添加仓库B作为远程源
    git remote add repo-b git@github.com:你的用户名/repo-b.git
    git fetch repo-b
    # 拉取仓库B的主分支代码到本地
    git checkout repo-b/main -- .
    # 创建react文件夹,把剩余文件移进去
    mkdir react
    git mv !(java-spring|react) react/
    # 提交修改
    git add .
    git commit -m "迁移React仓库代码到react文件夹"
    
  • 把合并后的代码推送到新仓库:
    git push origin main
    
  • 可选:清理临时远程源
    git remote remove repo-a
    git remote remove repo-b
    

方法二:把仓库B合并到仓库A中(保留A的提交历史)

  • 本地克隆仓库A:
    git clone git@github.com:你的用户名/repo-a.git
    cd repo-a
    
  • 先把仓库A的代码移到java-spring文件夹:
    mkdir java-spring
    git mv !(java-spring) java-spring/
    git add .
    git commit -m "将Java Spring代码迁移到java-spring文件夹"
    git push origin main
    
  • 导入并合并仓库B的代码:
    # 添加仓库B作为远程源
    git remote add repo-b git@github.com:你的用户名/repo-b.git
    git fetch repo-b
    # 创建临时分支存放仓库B的代码
    git checkout -b temp-branch repo-b/main
    # 把仓库B的代码移到react文件夹
    mkdir react
    git mv ./* react/
    # 注意:如果有隐藏文件(比如.gitignore),需要手动移动并合并规则
    git add .
    git commit -m "将React代码迁移到react文件夹"
    # 切回主分支,合并临时分支
    git checkout main
    git merge temp-branch --allow-unrelated-histories
    # 推送到仓库A
    git push origin main
    
  • 可选:清理临时分支和远程源
    git branch -d temp-branch
    git remote remove repo-b
    

注意点

  • 隐藏文件处理:两个仓库的.gitignore、.env等文件可能需要手动合并,保留双方的配置规则
  • Windows环境兼容:如果用Windows,git mv !(folder)命令不生效,可以手动拖拽文件到目标文件夹,或者用PowerShell命令:Get-ChildItem -Exclude java-spring | Move-Item -Destination java-spring
  • 合并后务必检查代码完整性,测试两个项目能否正常运行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 12:42:19