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

如何在不Fork仓库的前提下保留commit history复制代码仓库?

不Fork仓库且保留提交历史的解决方案

当然有,你可以通过Git的本地克隆+重置远程仓库的方式实现,具体步骤如下:

方式一:普通克隆(适合需要立即开始开发的场景)

  1. 在GitHub上创建一个全新的空仓库(不要勾选初始化README、.gitignore或许可证选项)。
  2. 在本地终端执行以下命令:
    • 克隆模板仓库到本地:
      git clone https://github.com/你的用户名/模板仓库名.git
      
    • 进入克隆后的仓库目录:
      cd 模板仓库名
      
    • 移除与原模板仓库的远程关联:
      git remote remove origin
      
    • 添加你的新项目仓库作为新的远程源:
      git remote add origin https://github.com/你的用户名/新项目仓库名.git
      
    • 推送所有提交历史和分支到新仓库:
      git push -u origin main
      
      (如果原模板仓库的默认分支是master,替换为git push -u origin master)

方式二:裸克隆(适合仅复制仓库历史,不需要本地工作目录的场景)

这种方式更高效,不会生成本地工作文件:

  1. 同样先创建一个全新的空GitHub仓库。
  2. 在本地终端执行:
    • 创建模板仓库的裸克隆:
      git clone --bare https://github.com/你的用户名/模板仓库名.git
      
    • 进入裸仓库目录:
      cd 模板仓库名.git
      
    • 将所有内容镜像推送到新仓库:
      git push --mirror https://github.com/你的用户名/新项目仓库名.git
      
    • 完成后可删除临时的裸仓库目录:
      cd .. && rm -rf 模板仓库名.git
      

完成后,你的新项目仓库会完整保留原模板仓库的所有提交历史,同时GitHub不会将其标记为派生仓库,也不会有任何与原模板仓库的PR关联关系。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 00:22:20