Git 재설정 후 코드를 검색하는 방법
버전 관리를 위해 Git을 사용하는 과정에서 오용으로 인해 코드가 손실될 수 있습니다. 그 중 하나는 git Reset
명령을 사용하여 코드를 이전 버전으로 롤백하는 것입니다. 기록 버전으로 롤백하면 최신 코드가 덮어쓰여집니다. 적시에 백업하지 않으면 코드의 이 부분이 영구적으로 손실됩니다. 그렇다면 이런 일이 발생하면 잃어버린 코드를 어떻게 검색할 수 있나요? git reset
命令将代码回退至某个历史版本。当我们回退到一个历史版本后,原来最新的代码将会被覆盖,如果没有及时备份,那么这部分代码就会被永久丢失。那么,如果发生了这种情况,我们要如何找回丢失的代码呢?
- 使用
git reflog
命令
git reflog
命令可以查看当前仓库中执行的所有操作记录,包括 commit
、checkout
、reset
等操作。在使用 git reset
命令时,它会产生一条操作记录,因此我们可以使用 git reflog
命令来查看到达过哪些历史版本。具体操作步骤如下:
- 打开命令行工具,进入到代码存储的目录下;
- 执行
git reflog
命令,会显示所有的操作记录; - 复制回退到历史版本的操作记录的 SHA 值;
- 执行
git reset <SHA>
命令,将代码还原到指定的历史版本。
请注意,在使用 git reset
命令恢复代码时,我们需要确保将代码还原到正确的历史版本,否则会丢失更多的代码。
- 使用
git fsck
命令
git fsck
命令可以检查 Git 数据库中所有的对象,包括提交记录、分支、标签等,查找出未使用的或者丢失的对象,并打印出这些对象的 SHA 值。如果我们误操作导致了代码丢失,那么也可能是某些对象被误删了。使用 git fsck
命令可以查找到这些丢失的对象,并将其恢复。具体操作步骤如下:
- 打开命令行工具,进入到代码存储的目录下;
- 执行
git fsck --full
命令,检查 Git 数据库,查找丢失的对象; - 若 Git 数据库中确实存在丢失对象,执行
git cat-file -p <SHA>
命令,将对象打印出来; - 若打印出的对象是提交记录,执行
git merge <SHA>
命令,将其合并到当前分支; - 若打印出的对象是文件,执行
git cat-file -p <SHA> > filename
命令,将文件恢复到本地。
请注意,使用 git fsck
命令进行数据恢复时,需要小心谨慎,尽可能确认每个丢失的对象。如果误操作导致了 Git 数据库完整性问题,可能需要使用 Git 数据库修复工具进行修复。
- 使用第三方数据恢复工具
如果以上方法仍无法找回代码,并且数据非常重要,或者以上方法操作起来比较困难,可以使用第三方数据恢复工具来尝试恢复丢失的代码。这些工具通常可以扫描硬盘或者 U 盘,并恢复已经被删除的文件。常见的数据恢复工具包括 Recuva、EaseUS Data Recovery Wizard、Disk Drill 等。请注意,在使用这些工具时,需要小心操作,以免进一步损坏数据。
总之,Git 提供了各种方法可以帮助我们找回丢失的代码,尤其是 git reflog
命令和 git fsck
-
git reflog
명령을 사용하세요.
git reflog
명령을 사용하면 다음을 포함하여 현재 웨어하우스에서 수행된 모든 작업 기록을 볼 수 있습니다. 커밋, 체크아웃
, 재설정
및 기타 작업. git Reset
명령을 사용하면 작업 기록이 생성되므로 git reflog
명령을 사용하여 어떤 기록 버전에 도달했는지 확인할 수 있습니다. 구체적인 단계는 다음과 같습니다: 🎜- 명령줄 도구를 열고 코드가 저장된 디렉터리를 입력합니다.
-
git reflog
명령을 실행합니다. 작업 기록이 표시됩니다 ; - 롤백 작업 기록의 SHA 값을 기록 버전으로 복사합니다.
-
git Reset <SHA>
를 실행합니다. > 명령을 사용하여 코드를 지정된 기록 버전으로 복원합니다.
git Reset
명령을 사용할 때 코드가 올바른 이전 버전으로 복원되었는지 확인해야 합니다. 그렇지 않으면 더 많은 코드가 발생하게 됩니다. 잃어버린. 🎜-
git fsck
명령을 사용하세요.
git fsck
명령을 사용하여 Git의 모든 개체를 확인하세요. 커밋 레코드, 브랜치, 태그 등을 포함한 데이터베이스는 사용되지 않거나 손실된 개체를 찾아 이러한 개체의 SHA 값을 인쇄합니다. 우리가 잘못 작동하여 코드가 손실되는 경우 일부 개체가 실수로 삭제되었을 수도 있습니다. git fsck
명령을 사용하여 손실된 개체를 찾아 복원하세요. 구체적인 단계는 다음과 같습니다: 🎜- 명령줄 도구를 열고 코드가 저장된 디렉터리를 입력합니다.
-
git fsck --full
를 실행합니다. Git 데이터베이스를 확인하여 손실된 개체를 찾는 명령; - Git 데이터베이스에 실제로 손실된 개체가 있는 경우
git cat-file -p <SHA>
를 실행하세요. > 개체를 인쇄하는 명령; - 인쇄된 개체가 커밋 레코드인 경우
git merge <SHA>
명령을 실행하여 이를 현재 분기에 병합합니다. li> - 인쇄된 개체가 파일인 경우
git cat-file -p <SHA> filename
명령을 실행하여 파일을 로컬로 복원합니다.
git fsck
명령을 사용할 때는 주의하고 손실된 개체 각각을 최대한 확인해야 한다는 점에 유의하세요. 잘못 사용하면 Git 데이터베이스 무결성 문제가 발생하는 경우 Git 데이터베이스 복구 도구를 사용하여 복구해야 할 수도 있습니다. 🎜- 타사 데이터 복구 도구 사용
git reflog
명령과 git fsck
명령을 제공합니다. 버전 또는 누락된 개체. 데이터 복구를 수행할 때 데이터의 추가 손상을 방지하려면 작업의 정확성과 안전성에 주의해야 합니다. 🎜위 내용은 Git 재설정 후 코드를 검색하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











GIT는 버전 제어 시스템이며 GitHub는 GIT 기반 코드 호스팅 플랫폼입니다. GIT는 코드 버전을 관리하는 데 사용되며 로컬 작업을 지원합니다. GitHub는 문제 추적 및 풀 레크와 같은 온라인 협업 도구를 제공합니다.

Git과 Github도 같은 것이 아닙니다. GIT는 버전 제어 시스템이며 GitHub는 GIT 기반 코드 호스팅 플랫폼입니다. GIT는 코드 버전을 관리하는 데 사용되며 Github은 온라인 협업 환경을 제공합니다.

Github는 배우기가 어렵지 않습니다. 1) 기본 지식 마스터 : GitHub는 코드 변경 및 협업 개발을 추적하는 데 도움이되는 GIT 기반 버전 제어 시스템입니다. 2) 핵심 기능 이해 : 버전 제어는 각 제출, 로컬 작업 지원 및 원격 동기화를 기록합니다. 3) 사용 방법 : 저장소 작성부터 커밋 푸시, 분기 사용 및 요청을 당기는 것까지. 4) 일반적인 문제 해결 : 합병 충돌 및 파일 추가 잊어 버린 것과 같은. 5) 최적화 실습 : 의미있는 제출 메시지를 사용하고, 분기를 정리하고, 프로젝트 보드를 사용하여 작업을 관리합니다. 실습과 커뮤니티 커뮤니케이션을 통해 Github의 학습 곡선은 가파르지 않습니다.

이력서에서는 위치 요구 사항과 개인 경험에 따라 GIT 또는 GitHub를 작성하도록 선택해야합니다. 1. 위치에 GIT 기술이 필요한 경우 git을 강조 표시하십시오. 2. 직위가 커뮤니티 참여를 가치있게 평가하면 Github를 보여주십시오. 3. 사용 경험과 프로젝트 사례를 자세히 설명하고 완전한 문장으로 끝내십시오.

GIT 코드를 업데이트하는 단계 : 코드 확인 : git 클론 https://github.com/username/repo.git 최신 변경 사항 가져 오기 : Git Fetch Merge 변경 사항 : GIT 병합 원산지/마스터 푸시 변경 (옵션) : Git Push Origin Master

Microsoft는 Git을 소유하지 않지만 Github를 소유하고 있습니다. 1. Git은 2005 년 Linus Torvaz가 만든 분산 버전 제어 시스템입니다. 2. Github는 GIT를 기반으로 한 온라인 코드 호스팅 플랫폼입니다. 2008 년에 설립되어 2018 년 Microsoft에서 인수했습니다.

해결 : GIT 다운로드 속도가 느리면 다음 단계를 수행 할 수 있습니다. 네트워크 연결을 확인하고 연결 방법을 전환하십시오. GIT 구성 최적화 : 포스트 버퍼 크기를 늘리고 (GIT 구성-글로벌 http.postBuffer 524288000) 저속 제한 (git config --global http.lowspeedlimit 1000)을 줄입니다. git 프록시 (예 : git-proxy 또는 git-lfs-proxy)를 사용하십시오. 다른 git 클라이언트 (예 : Sourcetree 또는 Github 데스크탑)를 사용해보십시오. 화재 보호를 확인하십시오

GIT에서 시작하는 것은 버전 제어 원칙에 대한 깊은 이해에 더 적합하며 GitHub에서 시작하는 것은 협업 및 코드 호스팅에 중점을 두는 데 더 적합합니다. 1. git은 코드 버전 기록을 관리하는 데 도움이되는 분산 버전 제어 시스템입니다. 2. GitHub는 GIT를 기반으로 한 온라인 플랫폼으로 코드 호스팅 및 협업 기능을 제공합니다.
