Git 如何将一个项目的代码放到一个新的仓库中,但不在新的仓库中显示旧的提交记录

简介: Git 如何将一个项目的代码放到一个新的仓库中,但不在新的仓库中显示旧的提交记录

一、异常错误

场景:我想把RuoYi的代码放到一个新的仓库里,放进去之后,这个仓库会显示RuoYi之前的所有提交,如何不显示这些旧的提交?

有时候,我们可能需要将一个项目的代码放到一个新的仓库中,但是我们又不想在新的仓库中显示旧的提交记录。这可能是因为旧的提交记录包含一些敏感信息,或者因为我们只想在新的仓库中保留最新的代码历史记录。

二、原因

当我们需要将一个项目的代码放到一个新的仓库中时,可能有以下几种情况:

  1. 我们想要将代码从一个公共仓库中复制到一个私有仓库中,以保护代码的安全性。
  2. 我们想要将一个项目的代码从一个仅供开发人员使用的仓库中复制到一个公共仓库中,以便其他人可以查看和使用该代码。
  3. 我们想要将一个项目的代码从一个旧的仓库中复制到一个新的仓库中,并且只保留最新的提交历史记录,以便使新的仓库更加整洁和易于管理。

在这些情况下,我们可以使用类似下面提到的步骤来完成任务。但需要注意的是,在进行这些操作之前,我们应该先备份原有仓库的代码,以防止数据丢失。同时,我们也需要确保在进行任何更改之前,仔细阅读并理解Git的相关操作指南,以确保我们不会意外删除或更改重要的数据。

三、解决方法

如果您想将ruoyi的代码放到一个新的仓库里,并且不想显示旧的提交记录,可以使用以下步骤:

  1. 创建一个新的空白仓库,例如使用GitHub或GitLab创建一个新的仓库。
  2. 将ruoyi的代码clone到本地。
  3. 进入ruoyi的本地仓库目录,使用以下命令将其转换为一个新的仓库:
git init
git remote add origin <新仓库的远程地址>
git fetch --all
git reset --hard origin/master

这些命令将把ruoyi的本地仓库转换为一个新的仓库,并将其与新的远程仓库关联起来。

4.使用以下命令清除旧的提交记录:

git checkout --orphan latest_branch
git add -A
git commit -am "Initial commit"
git branch -D master
git branch -m master
git push -f origin master

这些命令将创建一个新的分支latest_branch,并将所有文件添加到该分支中。然后,它将创建一个新的提交,该提交将作为新仓库的初始提交。最后,它将删除旧的master分支,并将latest_branch分支重命名为master分支,并将其强制推送到新的远程仓库中。

这样,您就可以将项目的代码放到一个新的仓库里,并且不显示旧的提交记录。


这些代码是Git命令,用于将项目的代码放到一个新的仓库里,并且不显示旧的提交记录。下面是每个命令的详细解释:

  1. git init: 初始化一个Git仓库。
  2. git remote add origin <新仓库的远程地址>: 将本地仓库与新的远程仓库关联起来。
  3. git fetch --all: 从远程仓库获取所有分支和提交记录。
  4. git reset --hard origin/master: 将本地仓库的代码重置为远程仓库的master分支的最新提交。
  5. git checkout --orphan latest_branch: 创建一个新的分支latest_branch。
  6. git add -A: 将所有文件添加到暂存区。
  7. git commit -am "Initial commit": 创建一个新的提交,作为新仓库的初始提交。
  8. git branch -D master: 删除旧的master分支。
  9. git branch -m master: 将latest_branch分支重命名为master分支。
  10. git push -f origin master: 强制推送master分支到新的远程仓库中。

这些命令的目的是将项目的本地仓库转换为一个新的仓库,并清除旧的提交记录,以便在新的仓库中只显示初始提交。

目录
相关文章
|
14天前
|
安全 开发工具 git
git添加远程仓库报错To add an exception for this directory解决方案-优雅草卓伊凡
git添加远程仓库报错To add an exception for this directory解决方案-优雅草卓伊凡
129 5
git添加远程仓库报错To add an exception for this directory解决方案-优雅草卓伊凡
|
2月前
|
Shell 网络安全 开发工具
项目快速导入git
本文介绍了如何在本地初始化 Git 仓库并将代码提交到远程仓库(如 GitHub 或 Gitee)的基本流程。内容包括安装 Git、创建仓库、添加文件、提交更改以及推送代码到远程仓库的详细步骤,适合初学者快速掌握 Git 的基本使用方法。
122 1
|
2月前
|
开发工具 git 开发者
Git流程控制:远程仓库操作的实用指南
通过遵循这些步骤和策略,你将能够更有效地与远程仓库进行交互,确保代码变更的透明度和项目历史的干净。同时,良好的版本控制习惯可以减少潜在的冲突,并帮助保持代码库的整洁。在日常工作中应用这些实用的Git流程控制技巧将是非常有益的。
120 0
|
5月前
|
JavaScript 前端开发 持续交付
实际工作中 Git Commit 代码提交规范是什么样的?
实际工作中 Git Commit 代码提交规范是什么样的?
307 7
|
5月前
|
网络安全 开发工具 git
Git仓库创建与代码上传指南
本教程介绍了将本地项目推送到远程Git仓库的完整流程,包括初始化本地仓库、添加和提交文件、创建远程仓库、关联远程地址及推送代码。同时,还提供了`.gitignore`配置、分支管理等可选步骤,并针对常见问题(如认证失败、分支不匹配、大文件处理及推送冲突)给出了解决方案。适合初学者快速上手Git版本控制。
|
6月前
|
Shell 开发工具 git
解决git bash报错:在仓库中检测到可疑的所有权
总的来说,解决“在仓库中检测到可疑的所有权”的报错,关键在于理解和调整文件或目录的所有权。只要我们正确地设置了文件或目录的所有权,那么我们就可以避免这种问题,让Git Bash正常工作。
248 22
|
4月前
|
开发工具 git 索引
如何使用Git的暂存区来管理代码更改?
如何使用Git的暂存区来管理代码更改?
809 0
|
4月前
|
安全 Shell 开发工具
Windows下使用git配置gitee远程仓库
就在前几天因为一些原因,我的电脑重装了系统,然后再重新配置git的环境的时候就遇到了一些小问题。所以我决定自己写一篇文章,以便以后再配置git时,避免一些错误操作,而导致全网搜方法,找对的文章去找对应的解决方法。下面为了演示方便就拿gitee来演示,不拿GitHub了写文章了。
229 0
|
9月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
498 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
6月前
|
文字识别 网络协议 开发工具
GitHub封锁?推荐5个国产的Git仓库替代平台
近日,GitHub对中国区IP的部分限制引发了广泛关注。未登录用户被拒,已登录用户功能受限,南北网络环境差异更显“内卷”。为应对这一挑战,本文推荐了多个国产Git平台:Gitee(码云)、GitCode(CSDN旗下)、CODING(腾讯系)、CodeUP(阿里云支持)及微信代码管理工具。这些平台功能全面、稳定性强,是开发者迁移项目的理想选择。通过同步代码、配置CI/CD流水线等简单步骤,可确保项目平稳过渡。此次事件提醒我们,掌握核心技能与支持国产平台同样重要!
3809 11