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

如何将REPO1的main分支代码无历史复制到REPO2的main分支

无历史复制REPO代码到目标仓库的方法

要把REPO1 main分支的当前代码复制到REPO2 main分支,且完全丢弃所有提交历史,直接创建全新初始提交就行,下面是两种实用操作:

方法一:临时目录中转(直观易操作)

  • 先把REPO1的main分支单独克隆到本地临时文件夹:
    git clone --branch main --single-branch <REPO1地址> temp-repo
    
  • 进入临时文件夹,删掉.git目录彻底清除所有历史:
    cd temp-repo
    rm -rf .git
    
  • 初始化新仓库,添加所有文件并做初始提交:
    git init
    git add .
    git commit -m "初始提交:同步REPO1 main分支代码"
    
  • 关联REPO2的远程仓库:
    git remote add origin <REPO2地址>
    
  • 强制推送到REPO2的main分支(注意:这会覆盖REPO2 main分支所有现有内容,确认后再执行):
    git push -f origin main
    

方法二:直接在REPO2本地仓库操作(无需临时目录)

  • 先克隆REPO2的main分支到本地:
    git clone <REPO2地址> repo2-local
    cd repo2-local
    
  • 拉取REPO1 main分支的最新代码,覆盖当前目录所有文件:
    git fetch <REPO1地址> main
    git checkout FETCH_HEAD -- .
    
  • 重置暂存区,创建全新的初始提交:
    git rm -rf .git/index
    git add .
    git commit --allow-empty -m "初始提交:同步REPO1 main分支代码"
    
  • 强制推送到REPO2远程main分支:
    git push -f origin main
    

重要提醒

  • 强制推送(git push -f)会彻底覆盖REPO2 main分支的原有提交记录,执行前一定要确认该分支没有需要保留的内容。
  • 私有仓库可以把命令里的HTTPS地址换成对应的SSH地址,效果一样。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 14:11:04