Github清除历史记录的方法

2023-11-10

GitHub历史提交记录累计到一定程度以后,就很麻烦,体积大下载不便,压缩也慢,这时候就想永久性地删除掉没什么卵用的历史commit记录,但还要保留stars、forks、issues、tags等重要信息,因此不能删掉仓库重建一份,而要创建一个空分支,把旧分支给嘎掉!可是GitHub网站上不提供这种功能,所以只能通过命令行的形式来搞。首先使用 git checkout --orphan new 命令。

git checkout --orphan new

这个命令会创建一个孤儿分支new,然后推送到云端,这个orphan分支没有历史包袱,所以用它来替换掉原来的历史沉重主分支main。先要保证登录账户是admin模式,拥有所有读写权限。

9fafeb371405118f2bec43a5a66c633b.png

然后去网页上将new分支设置为默认分支,取代main分支的地位。进入分支设置界面,点击“切换默认分支” switch default branch。切换完后删除掉原来的main分支,最后将new分支重命名为main即可。

6c88ab534d8cdc8ebec4e2f85645369b.png

b345078049fbc1ed498b8713e91ca3e4.png

以上步骤全部完成之后,最好删除本地的仓库,重新clone一份,彻底清除本地的历史,否则可能会拉取失败,反正新分支也很小,无所谓。至此之后,新的commit提交都从1开始计数啦。最后总结一下清除git历史记录的7个步骤:

  1. 登录管理员账户

  2. git checkout --orphan new

  3. git push

  4. 设置默认分支为new

  5. 删除原来的main分支

  6. new重命名为main

  7. git clone

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Github清除历史记录的方法 的相关文章

  • 您的分支比“origin/master”领先 3 个提交

    我在运行时收到以下信息git status Your branch is ahead of origin master by 3 commits 我读过其他一些帖子 解决这个问题的方法是运行git pull rebase但是 rebase
  • 将“复制到剪贴板”添加到 GitHub markdown 的简单方法?

    具体来说 我有一些用于安装的代码块 我希望用户能够快速将其复制并粘贴到终端中 我想要一个用于代码块 复制到剪贴板 的按钮 由于 git 克隆 URL 有一个 复制到剪贴板 按钮 我想知道我是否可以利用该按钮 或者如果不能 是否可以将一些相对
  • 如何关闭分支而不将其从 git 的历史记录中删除?

    我想提交并关闭其分支 而不将其从历史中删除 有了水银我会commit close branch then update转到上一个 然后继续工作 有了 git 我很困惑 没有与 Git 中关闭分支完全相同的方法 因为 Git 分支比 Merc
  • Github:我的仓库登陆页面上缺少“设置”菜单

    设置 菜单应该是最后一个菜单 位于 图形 菜单之后 没有 设置 菜单会影响我设置 Webhook 的能力 是的 这是我的仓库 我拥有它 landing page of my test repo travis repo 我今天也遇到了同样的问
  • SSL 适用于浏览器、wget 和curl,但不适用于 git

    我有一个网站 用于托管 redmine 和几个 git 存储库 这非常适合 http 但我无法使用 https 进行克隆 即 git clone http mysite com git test git 工作正常 但是 git clone
  • 为什么 Github API 只返回前 100 个监视的存储库?

    我正在 Github 上查看 392 个存储库 然而 Github API 只返回 100 有人知道为什么吗 https github com api v2 json repos watched trivektor https github
  • 更改先前提交的作者姓名:快进推送被拒绝

    我最近在 GitHub 上打开了一个存储库 我是 Git 新手 与新人一样 我使用默认名称和电子邮件进行提交 按照最佳菜鸟传统 我发现五次提交为时已晚 现在乐趣开始了 因为我开始搜索有关如何更改这些提交的作者和提交者名称的信息 美好的 我基
  • Spring Cloud Config - 不允许使用 git-upload-pack

    我有一个在 docker 环境中运行的 spring boot 应用程序 它连接到 Git 存储库以获取应用程序的配置 我的问题是 当尝试获取 properties 文件时 应用程序有时会出错 这很奇怪 因为如果我更改用户和密码 同一个应用
  • 为别名命令添加“git help”?

    我已经实现了一个 Git 命令并使用 git 别名将其连接到 Git 但是有没有办法连接 Git 帮助 我在 Windows 上运行 如果我发出git help mycmd我收到一个弹出窗口 告诉我 Git 找不到 git mycmnd h
  • Git:以新名称签出旧版本的目录

    如何以新名称查看目录的先前版本 我一直都有一个目录foo在我的仓库中 我想创建一个目录foo old在我当前的工作树中 其内容是HEAD 2 foo 我同时需要两个版本 以确保它们给出相同的结果 测试这需要相当多的代码 并且需要同时提供两个
  • GIT 和 Ruby:如何从 ruby​​ 脚本内部取消设置 GIT_DIR 变量?

    我编写了一个非常简单的 部署 脚本作为我的post update挂钩到我的裸 git 存储库中 变量如下 live domain mydomain com staging domain stage mydomain com git repo
  • http.h:6:23: 致命错误:curl/curl.h:没有该文件/目录

    我在 CentOS 7 中下载 git 包 wget https www kernel org pub software scm git git 2 0 1 tar gz tar xzf git 2 0 1 tar gz 当我编译git时
  • 合并后 Git 分支和提交历史记录

    我正在开发一个项目 单独 对于我开发的每个功能 我都会创建一个新分支 处理该功能 然后将其合并到 master 中 所以通常我不会同时在两个不同的分支上工作 也不会在一个分支上工作时接触master 当我合并一个分支时 我看到 使用gitx
  • Git:忽略版本控制文件

    gitignore 文件对于忽略一些我们不想控制的文件非常有用 不幸的是 当文件已处于版本控制之下时 它无法使用 例如 我的 gitignore 已添加到 git 中 文件可能与我的同事想要的不同 例如我想忽略 Vim 文件 每当我对此文件
  • 在 python 中找不到 git 可执行文件

    我试图使用访问密钥克隆 git 存储库 但是当我尝试运行它时 它抛出一个异常 说找不到 git 可执行文件 但我已经安装了 git 并且 in it py 显示了正确的路径 C Program Files Git bin 我还安装了 git
  • git merge --squash 和 gitcherry-pick 有什么区别?

    如果我在标准的主功能工作流程中工作 那么将功能分支压缩到主功能分支和将其挑选到主功能分支之间有什么区别 分支示例 m1 m2 master f1 f2 feature 我认为两者都有相同的输出 即 m1 m2 m3 master f1 f2
  • GitHub API 获取用户/组织总数

    Using GitHub API https developer github com v3 如何计算请求时的用户 组织总数 Users https developer github com v3 users and 组织机构 https
  • 我如何才能看到 Github 风格的东西,例如 git -repo 的打孔卡和时间线?

    我正在寻找一个可以可视化 git repo 工作的软件 我喜欢 Github 的一些功能和 Bitbucket 的一些功能 所以我不想使用它们 因为它们并不完美 我正在寻找创建类似视觉特征的方法 下面你可以找到一些部分 但仍然缺少很多谜题
  • 设置 git 别名,但调用它会给出“找不到命令”

    我想在 git 中设置一个别名来计算存储库中的总行数 因此我进入 Git Bash 并输入以下内容 git config global alias linecount ls files z xargs 0 wc l 我输入命令后 没有出现错
  • Git 忽略本地文件更改

    我都尝试过 git update index assume unchanged config myconfig and editing git info exclude并添加config myconfig 然而 当我执行 git pull

随机推荐

  • 如何提高链表的查询效率

    使用跳表 1 链表的变形 跳表 跳表是一种我们不常见的数据结构 但由于其优秀的特性 在工业中 常常被用来代替红黑树 进行查找 插入和删除 Redis的有序集合就是用跳表来实现的 跳表本质上是采用 二分 的思路来改造链表 所以这要求链表必须是
  • HCIP-H12-221练习题

    HCIP H12 221练习题 习题1 由于属性AS PATH不能在AS内起作用 所以规定BGP路由器不会宣告任何从IBGP对等体来的更新信息给其IBGP对等体 A 正确 B 错误 答案 A 习题2 通过重发布命令注入BGP的路由 其Ori
  • Unity3D中的JavaScript语言基础

    Unity中的JS 也称UnityScript 和基于浏览器的JS有比较大的区别 因为UnityScript是基于Mono的 net 的IL语言规范 CLR运行环境 Mono虚拟机 上设计的语言 0 基本概念 Unity3d中的脚本可以与游
  • 使用Matlab对传递函数进行z变换

    一 建立传递函数 在这里插入代码片 s tf s Gc 100 s s 100 二 进行z变换 在这里插入代码片 c2d Gc 0 01 z dsys c2d sys ts method 传函离散 这里面的method有好多种 zoh 零阶
  • (二)Docker部署Tomcat及Web应用

    Docker部署Tomcat及Web应用 这里只拉起一个Tomcat容器 运行一个简单的web项目 确保整个docker可以正常运行 查看Tomcat镜像 docker search tomcat 下载下来官方的镜像Starts最高的那个
  • 【Android】Bluetooth(蓝牙)连接与数据传输(一)

    目录 简介 权限声明 蓝牙扫描 开始扫描 取消扫描 获取蓝牙信息 蓝牙配对 配对 取消配对 获取已配对蓝牙 最终效果 简介 蓝牙技术是一种无线数据和语音通信开放的全球规范 它是基于低成本的近距离无线连接 为固定和移动设备建立通信环境的一种特
  • 若依前后端分离版本,Windows下使用Nginx代理的方式进行部署(全流程,图文教程)

    场景 若依官网 http doc ruoyi vip 前提 服务器上安装Mysql 并将数据库导入 在SpringBoot中的application druid yml配置mysql数据库连接 服务器安装Redis服务端 并在applica
  • 删除文件夹中的重复资源脚本

    usr bin python coding utf 8 import os base目录 path Users mulu1 install Model目录 path1 Users mulu2 def traverse f fs os lis
  • 第20章 通信—硬件 I2C

    一 关于I2C 1 1 I2C 控制器 STM32F103系列的I C控制器 可作为通信主机或从机 因此有四种工作模式可选择 主机发送模式 主机接收模式 从机发送模式 从机接收模式 传输速度上 支持标准模式 Standard mode 最高
  • 高仿QQ微信小程序,我趟过的坑

    距离微信小程序内测版发布已经有十天的时间了 网上对微信小程序的讨论也异常火爆 从发布到现在微信小程序一直占领着各种技术论坛的头条 当然各种平台也对微信小程序有新闻报道 毕竟腾讯在国内影响力还是很大的 我们都知道微信小程序第一天发布内测版 并
  • 遗传算法之二进制编码

    遗传算法的基本步骤 遗传算法 GA 的流程如图所示 Created with Rapha l 2 2 0 编码 把所需要选择的特征进行编号 每一个特征就是一个基因 一个解就是一串基因的组合 为了减少组合数量 在图像中进行分块 然后把每一块看
  • s1.1024gc.net/bbs/index.php,1.12.2游戏崩溃/_ \,那位大神解答一下

    1 12 2游戏崩溃 那位大神解答一下 1 12 2游戏崩溃的log 19 26 12 main INFO LaunchWrapper Loading tweak class name net minecraftforge fml comm
  • 【数据治理】数据中台:OneData之One ID中用户体系ID-Mapping

    在OneData 体系中 OneID 指统一数据萃取 是一套解决数据孤岛问题的思想和方法 数据孤岛是企业发展到一定阶段后普遍遇到的问题 各个部门 业务 产品 各自定义和存储其数据 使得这些数据间难以关联 变成孤岛一般的存在 OneID的做法
  • react输入框监听获取值,写入state自动一一对应

    onChange v gt this handlechange username v handlechange key val console log key val target value this setState key val t
  • JAVA之AES加密数据

    AES简介 高级加密标准 为最常见的对称加密算法 微信小程序加密传输就是用这个加密算法的 对称加密算法也就是加密和解密用相同的密钥 具体的加密流程如下图 为此以Java封装了一个utils 即可轻松使用 步骤一 需要定义一个静态密钥k ke
  • 获取时间段:本周、本月、本年

    case 本周内 DateTime retStartDay DateTime Now Date AddDays int DateTime Now DayOfWeek 1 DateTime retEndDay DateTime Now Dat
  • arp协议属于哪一层_OSI各个分层分别负责哪些功能?有哪些主要协议?涉及到哪些设备?...

    应用层 应用层主要是负责一些顶层协议的工作 主要包括数据封装协议 动态分配内网IP地址以及DNS域名解析 在这一层中主要是浏览器或应用程序等组件参与了这些工作 为了保证在不同平台或不同组件中规范和标准化各项工作流程 应用层涉及了以下协议 首
  • 如何 在 Mac OS X 里通过命令行获取 CPU 信息

    本文转载至 http osxdaily com 2011 07 15 get cpu info via command line in mac os x 转载说明 由于 Mac OS X不像Linux 它没有 proc系统 在网上找到下面一
  • 把整数转换成2的n次方的和数组

    为什么80 的码农都做不了架构师 gt gt gt 大概这样 125 gt 1 4 8 16 32 64 写几种实现 Ruby 2 3 1 022 gt 125 to s 2 reverse chars map with index b i
  • Github清除历史记录的方法

    GitHub历史提交记录累计到一定程度以后 就很麻烦 体积大下载不便 压缩也慢 这时候就想永久性地删除掉没什么卵用的历史commit记录 但还要保留stars forks issues tags等重要信息 因此不能删掉仓库重建一份 而要创建