当前位置: 首页 > news >正文

突然断电导致git损坏修复

背景

使用ide开发时突然断电启动后所有文件都成了没有提交的文件。打开git视图日志也消失不见

# git命令执行结果如下
git status
No commits yetChanges to be committed:(use "git rm --cached <file>..." to unstage)new file:   .github/FUNDING.ymlnew file:   .gitignorenew file:   DESIGN.mdnew file:   LICENSEnew file:   PROBLEM.mdnew file:   README.mdnew file:   xxx/pom.xmlnew file:   xxx......new file:   xxxn
git pull
You are not currently on a branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.git pull <remote> <branch>git branch
fatal: Failed to resolve HEAD as a valid ref.
git reflog
fatal: your current branch appears to be broken

分析

突然断电应该时git文件受损导致

  • 进入项目下的.git目录
  • 分析config文件是否损坏,如损坏进行修复

    如格式已损坏或空白 去别的项目.git下把config拷贝过来
    按照自己项目的情况进行修改
    如添加和删除本地分支和远端分支节点
    修改远端分支地址

    # 格式如下
    [core]repositoryformatversion = 0filemode = falsebare = falselogallrefupdates = truesymlinks = falseignorecase = true
    # 远端创库
    [remote "origin"]# 远端创库地址url = https://gitee.com/xxx/xxx.gitfetch = +refs/heads/*:refs/remotes/origin/*
    # 本地master创库
    [branch "master"]remote = originmerge = refs/heads/master
    # 本地dev创库
    [branch "dev"]remote = originmerge = refs/heads/dev	
    
  • 进入.git/refs/heads目录下打开当前分支文件查看是否有内容

如打开dev文件 查看里面的内容 该文件保存的是dev分支最后一次提交的commitId
如4146261a90c75d89235fee5566852dd996326666

  • 进入.git/refs/remotes/origin目录查看当前远程分支是否有内容

参考上一步
origin为远程创库副本名称 如果为其它名称需进入对应目录

  • 如果没有内容去日志文件或远端git创库查看提交id写进去
    • 本地创库分支文件无内容
      # 提交记录格式 
      # 4146261a90c75d89235fee5566852dd996326666 才是commitId
      daab13154a48de2325ca4d4b3c68d80d25a10def 4146261a90c75d89235fee5566852dd996326666 angel <angel@163.com> 1711102685 +0800	commit: 汇总功能一些controller里的逻辑移动到service里
      

      去.git\logs\refs\heads下
      打开对应分支文件 翻动到最下面 参考上面的提交记录格式 把最后提交的commitId复制出来转贴到上一步的空白分支文件里
      复制的一定要是commitId不要复制错了

    • 远程创库分支文件无内容
      • 本地远程创库副本是最新的

        去远程创库网页复制最新的commitId到对应文件里

      • 本地创库副本不是最新的

        根据最后一次提交记录 到提交记录文件下寻找commitId或去远程创库web端寻找
        提交记录文件
        本地创库的提交记录可以根据提交时的描述查找
        远端创库副本提交记录在.git\logs\refs\remotes\origin下打开对应分支拖到最下面复制commitId

        e0e4c6aab3a9ce1f02671e5c8fb907bab642e272 4146261a90c75d98471fee5566852dd996326666 angel <angel@163.com> 1711161193 +0800	update by push
        

修复

  • config修复

    项目下.git/config损坏
    拿份好的替换
    在修改分支部分和替换远端创库地址

  • 本地分支文件修复

    项目下.git/refs/heads下分支文件空白
    去.git\logs\refs\heads下
    打开分支文件拉到最下面
    复制commitId到空白文件中

  • 远端分支文件修复

    项目下.git/refs/remotes\origin下分支文件空白
    去.git\logs\refs\remotes\origin下
    打开分支文件拉到最下面
    复制commitId到空白文件

相关文章:

突然断电导致git损坏修复

背景 使用ide开发时突然断电启动后所有文件都成了没有提交的文件。打开git视图日志也消失不见 # git命令执行结果如下 git status No commits yetChanges to be committed:(use "git rm --cached <file>..." to unstage)new file: .github/FUNDING.ymlnew …...

MATLAB入门指南:从零开始进行数学建模竞赛

第1部分&#xff1a;认识MATLAB 1.1 什么是MATLAB&#xff1f; MATLAB&#xff08;Matrix Laboratory的缩写&#xff09;是一个高性能的数值计算环境和第四代编程语言。由MathWorks公司开发&#xff0c;它提供了一个便捷的数学解决框架&#xff0c;主要用于算法开发、数据可视…...

【JavaEE初阶系列】——带你了解volatile关键字以及wait()和notify()两方法背后的原理

目录 &#x1f6a9;volatile关键字 &#x1f388;volatile 不保证原子性 &#x1f388;synchronized 也能保证内存可见性 &#x1f388;Volatile与Synchronized比较 &#x1f6a9;wait和notify &#x1f388;wait()方法 &#x1f4bb;wait(参数)方法 &#x1f388;noti…...

GitHub配置SSH Key(详细版本)

GitHub配置SSH Key的目的是为了帮助我们在通过git提交代码是&#xff0c;不需要繁琐的验证过程&#xff0c;简化操作流程。比如新建的仓库可以下载, 但是提交需要账号密码。 步骤 一、设置git的user name和email 如果你是第一次使用&#xff0c;或者还没有配置过的话需要操作…...

JavaScript 权威指南第七版(GPT 重译)(六)

第十五章&#xff1a;JavaScript 在 Web 浏览器中 JavaScript 语言是在 1994 年创建的&#xff0c;旨在使 Web 浏览器显示的文档具有动态行为。自那时以来&#xff0c;该语言已经发生了显著的演变&#xff0c;与此同时&#xff0c;Web 平台的范围和功能也迅速增长。今天&#…...

Learning to summarize from human feedback

Abstract 人工参考总结以及 ROUGE 指标只是我们真实关心的目标(总结质量)的粗略代表。通过优化人工偏好来显著提升总结质量使用大量高质量的人类比较来训练一个模型来预测人类偏好的总结使用这个模型作为奖励函数对总结策略进行强化学习微调我们模型的效果在 TL;DR 数据集上显…...

数据库迁移测试

数据迁移测试 在进行项目重构或者更新的时候或多或少会对数据库进行变更&#xff0c;为了保证业务的稳定性对数据进行迁移测试是很有必要的&#xff0c;因为数据就是业务的基石&#xff0c;没有数据业务都是空中楼阁&#xff0c;形同虚设&#xff0c;小编结合近期的工作对数据…...

ASP .Net Core ILogger日志服务

&#x1f433;简介 ILogger日志服务是.NET平台中的一个内置服务&#xff0c;主要用于应用程序的日志记录。它提供了灵活的日志记录机制&#xff0c;允许开发者在应用程序中轻松地添加日志功能。以下是其主要特点和组件&#xff1a; ILogger接口&#xff1a;这是ILogger日志服…...

LeetCode 2657.找到两个数组的前缀公共数组

给你两个下标从 0 开始长度为 n 的整数排列 A 和 B 。 A 和 B 的 前缀公共数组 定义为数组 C &#xff0c;其中 C[i] 是数组 A 和 B 到下标为 i 之前公共元素的数目。 请你返回 A 和 B 的 前缀公共数组 。 如果一个长度为 n 的数组包含 1 到 n 的元素恰好一次&#xff0c;我…...

【jvm】jinfo使用

jinfo介绍 jinfo 是一个命令行工具&#xff0c;用于查看和修改 Java 虚拟机&#xff08;JVM&#xff09;的配置参数。它通常用于调试和性能调优。 使用 jinfo 命令&#xff0c;你可以查看当前 JVM 的配置参数&#xff0c;包括堆大小、线程数、垃圾回收器类型等。此外&#xf…...

C++ Thread 源码 观后 自我感悟 整理

Thread的主要数据成员为_Thr 里面存储的是线程句柄和线程ID 先看看赋值运算符的移动构造 最开始判断线程的ID是否不为0 _STD就是使用std的域 如果线程ID不为0&#xff0c;那么就抛出异常 这里_New_val使用了完美转发&#xff0c;交换_Val和_New_val的值 _Thr _STD exchange(_…...

2024阿里云2核2G服务器租用价格99元和61元一年

阿里云2核2G服务器配置优惠价格61元一年和99元一年&#xff0c;61元是轻量应用服务器2核2G3M带宽、50G高效云盘&#xff1b;99元服务器是ECS云服务器经济型e实例ecs.e-c1m1.large&#xff0c;2核2G、3M固定带宽、40G ESSD entry系统盘&#xff0c;阿里云活动链接 aliyunfuwuqi.…...

刚刚!奥特曼剧透GPT-5,将在高级推理功能上实现重大进步

奥特曼&#xff1a;“GPT-5的能力提升幅度将超乎人们的想象…” 自 Claude 3 发布以来&#xff0c;外界对 GPT-5 的期待越来越强。毕竟Claude 3已经全面超越了 GPT-4&#xff0c;成为迄今为止最强大模型。 而且距离 GPT-4 发布已经过去了整整一年时间&#xff0c;2023年3月14…...

uniapp使用Canvas给图片加水印把临时文件上传到服务器

生成的临时路径是没有完整的路径没办法上传到服务器 16:37:40.993 添加水印后的路径, _doc/uniapp_temp_1710923708347/canvas/17109238597881.png 16:37:41.041 添加水印后的完整路径, file://storage/emulated/0/Android/data/com.jingruan.zjd/apps/__UNI__BE4B000/doc/…...

小希的迷宫

目录 描述 输入 输出 样例输入 样例~~输出~~ 思路 code 描述 Gardon的迷宫城堡小希玩了很久&#xff08;见Problem B&#xff09;&#xff0c;现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样&#xff0c;首先她认为所有的通道都应该是双向连通的&…...

MySQL索引剖析【了解背后的数据结构】

文章目录 常用索引概念聚簇索引 &#x1f389;非聚簇索引&#xff08;二级索引&#xff09; 数据结构选择Hash结构 ⭐️有序数组二叉搜索树AVL树&#xff08;平衡二叉搜索树&#xff09;B-Tree&#xff08;多路平衡查找树&#xff09;BTree ⭐️ MySQL中索引的实现InnoDB 索引实…...

004——内存映射(基于鸿蒙和I.MAX6ULL)

目录 一、 ARM架构内存映射模型 1.1 页表项 1.2 一级页表映射过程 1.3 二级页表映射过程 1.4 cache 和 buffer 二、 鸿蒙内存映射代码学习 三、 为板子编写内存映射代码 3.1 内存地址范围 3.2 设备地址范围 一、 ARM架构内存映射模型 &#xff08;以前我以为页表机制…...

150 Linux C++ 通讯架构实战6 服务器程序目录规划,makefile编写

从无到有产生这套 通讯架构源代码【项目/工程】 一&#xff0c;服务器程序目录规划 一个完整的项目 肯定会有多个源文件&#xff0c;头文件&#xff0c;会分别存放到多个目录&#xff1b; 我们这里要规划项目的目录结构&#xff1b; 注意&#xff1a;不固安是目录还是文件&am…...

OpenCV支持哪些类型的文件格式读写?

OpenCV支持多种类型的文件格式读写&#xff0c;包括但不限于以下格式&#xff1a; Windows位图文件&#xff1a;包括BMP和DIB格式。JPEG文件&#xff1a;支持JPEG、JPG和JPE三种扩展名。便携式网络图片&#xff1a;即PNG格式。便携式图像格式&#xff1a;包括PBM、PGM和PPM三种…...

数据库中使用IN操作效率问题

1. IN操作的基本概念 IN操作符在SQL中用于指定某个字段的值是否匹配列表中的任何值。这是一个条件操作符&#xff0c;用于在WHERE子句中过滤记录。 SQL语法示例&#xff1a; SELECT * FROM table_name WHERE column_name IN (value1, value2, ...); 2. IN操作的效率问题 当…...

HTML 语义化

目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中&#xff0c;高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司&#xff0c;近期做出了一个重大技术决策&#xff1a;弃用长期使用的 Nginx&#xff0c;转而采用其内部开发…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...