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

如何将无推送权限的外部仓库ExRepo合并到个人仓库MyOwnRepo?

无权限外部仓库内容合并到个人仓库的解决方案

你之前的核心问题是错误地在个人仓库内嵌套克隆了外部仓库,导致Git识别为嵌套仓库;而子模块方案仅能关联原仓库,无法满足你直接拥有内容并推送的需求。以下是正确的操作流程:

一、清理错误操作残留

如果MyOwnRepo里已有嵌套的ExRepo文件夹或子模块,先清理:

  • 删除嵌套文件夹(Windows):rmdir /s /q ExRepo
  • 删除嵌套文件夹(Linux/macOS):rm -rf ExRepo
  • 若已添加子模块,额外执行:
    git submodule deinit -f ExRepo
    git rm ExRepo
    

二、合并外部仓库内容到个人仓库

  1. 进入个人仓库目录:
    cd C:/Users/<User>/MyOwnRepo
    
  2. 添加外部仓库为临时远程源(命名为external避免混淆):
    git remote add external git@ExRepo.git
    
  3. 拉取外部仓库的所有内容:
    git fetch external
    
  4. 切换到你要合并到的目标分支(比如main):
    git checkout main
    
  5. 合并外部仓库的主分支内容(假设外部仓库主分支为main,按需调整):
    git merge external/main --allow-unrelated-histories
    

    注:--allow-unrelated-histories用于解决两个独立仓库无共同提交历史的合并问题

三、处理合并冲突(若有)

如果合并时出现冲突:

  • 手动打开冲突文件,修改冲突部分
  • 标记冲突已解决:git add <冲突文件名>
  • 完成合并提交:git commit

四、推送到个人远程仓库

合并完成后,直接推送到你的MyOwnRepo:

git push origin main

这样操作后,外部仓库ExRepo的内容会完全整合到你的个人仓库中,后续你可自由编辑、推送,不再依赖原外部仓库的权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 14:40:15