찾다
개발 도구자식git의 기록 지우기

Git은 일반적으로 사용되는 버전 관리 도구이며 프로젝트 개발에 널리 사용됩니다. 프로젝트 개발 중에 우리는 일반적으로 코드 제출, 브랜치 병합 및 기타 작업을 포함하여 버전 제어 및 관리를 위해 다양한 git 명령을 사용합니다. 그러나 경우에 따라 민감한 정보를 삭제하거나 불필요한 커밋 기록을 삭제하는 등 Git 기록을 지워야 할 수도 있습니다. 아래에서는 Git 기록을 지우는 방법에 대해 설명합니다.

1. 백업

Git 기록 삭제 작업을 수행하기 전에 작업 중 오류나 예상치 못한 상황을 방지하기 위해 백업이 필요합니다. 필요한 경우 코드 베이스를 복원할 수 있도록 현재 코드 베이스를 안전한 장소에 백업하는 것이 중요합니다. Git의 패키징 명령을 사용하여 프로젝트를 압축 파일로 백업할 수 있습니다. 예:

git archive --format zip --output backup.zip HEAD

이 명령은 현재 코드 베이스를 ZIP 파일로 패키징하고 backup.zip에 저장합니다.

2. 기록 지우기

  1. 단일 파일의 기록을 지우려면 명령을 사용하세요.

단일 파일의 기록을 삭제하려면 다음 명령을 사용하면 됩니다.

$ git filter-branch --index-filter 'git rm --cached --ignore-unmatch path/to/file' --prune-empty -- --all

이 명령은 대상 파일을 기록에서 완전히 삭제합니다. 그 중 path/to/file은 지워질 파일 경로를 나타냅니다. path/to/file 表示要清除的文件路径。

  1. 使用命令清除 commit 的历史纪录

有时候,我们需要删除某个 commit 及其之后的历史纪录。为此,我们可以使用 Git 的 rebase 命令来实现。具体来说,我们需要执行以下步骤:

1)使用以下命令展示项目中所有的 commit

$ git log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short

这个命令会显示项目中所有的 commit 记录。

2)决定要清除的 commit 的 SHA 值

我们需要查找要删除 commit 的 SHA 值,可以从下面的 commit 日志中获取:

commit 55d4d98de4caf2ac1a8f783624c58e533500f3d7
Author: John Doe <john@doe.com>
Date:   Fri Apr 30 16:01:07 2021 -0700

    Added new feature

上述示例中的 commit SHA 值是 55d4d98de4caf2ac1a8f783624c58e533500f3d7.

3)使用以下命令将要清除的 commit 弹出

$ git rebase -i <commit-hash>^

比如,我们要删除 SHA 值为 55d4d98de4caf2ac1a8f783624c58e533500f3d7 的 commit 及其之后的历史纪录,可以执行以下命令:

$ git rebase -i 55d4d98de4caf2ac1a8f783624c58e533500f3d7^

4)编辑交互窗口以将目标 commit 弹出

在交互模式中,我们需要将需要删除的目标 commit 标记为 “drop”,然后将文件保存退出即可。示例如下所示:

pick 44a0c2c this is an invalid commit, which should be removed
drop 55d4d98 Added new feature

在上例中,55d4d98 历史纪录将被删除,而 44a0c2c

    커밋 기록을 지우려면 명령을 사용하세요

    때로는 커밋과 후속 기록을 삭제해야 할 때가 있습니다. 이를 위해 Git의 rebase 명령을 사용할 수 있습니다. 구체적으로 다음 단계를 수행해야 합니다.

    1) 프로젝트의 모든 커밋을 표시하려면 다음 명령을 사용하세요.

    $ git filter-branch --force --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch ./' --tag-name-filter cat -- --all

    이 명령은 프로젝트의 모든 커밋 기록을 표시합니다.

    2) 삭제할 커밋의 SHA 값을 결정합니다

    삭제할 커밋의 SHA 값을 찾아야 하며, 이는 아래 커밋 로그에서 얻을 수 있습니다.

    $ git push origin --force --all

    위의 커밋 SHA 값 예는 55d4d98de4caf2ac1a8f783624c58e533500f3d7 code>입니다.

    🎜3) 다음 명령을 사용하여 삭제할 커밋을 팝업하세요. 🎜rrreee🎜예를 들어 SHA 값이 55d4d98de4caf2ac1a8f783624c인 커밋을 삭제하려는 경우 58e533500f3d7 및 후속 기록 기록을 사용하면 다음 명령을 실행할 수 있습니다. 🎜rrreee 🎜4) 대화형 창을 편집하여 대상 커밋을 표시합니다. 🎜🎜대화형 모드에서는 삭제해야 할 대상 커밋을 표시해야 합니다. "drop"으로 지정한 다음 파일을 저장하고 종료합니다. 예는 다음과 같습니다. 🎜rrreee🎜위 예에서는 <code>55d4d98 기록이 삭제되고 44a0c2c 기록이 최신 커밋이 됩니다. 🎜🎜5) 이전 기록을 지우려면 다음 명령을 사용하세요. 🎜rrreee🎜 이 명령은 "drop"으로 표시된 커밋과 후속 커밋을 지울 수 있습니다. 🎜🎜6) 원격 창고로 푸시🎜🎜마지막으로 원격 창고의 내역 기록을 업데이트하고 내역 기록의 정확성을 보장하려면 원격 창고로 강제 푸시해야 합니다. 🎜rrreee🎜다음과 같이 작동해야 한다는 점에 유의하세요. 위 명령을 실행할 때 주의하고 코드 베이스를 백업했는지 확인하세요. 한번 삭제하면 복원이 불가능하기 때문입니다. 🎜🎜요약🎜🎜이 글에서는 Git을 사용하여 기록을 삭제하는 방법을 소개합니다. 이러한 작업을 수행하기 전에 기록 기록 작업의 결과를 고려하고 돌이킬 수 없는 손실을 방지하기 위해 백업을 만들어야 합니다. 동시에, 역사적 기록을 지우는 것을 지양하고 필요한 경우에만 활용하도록 노력해야 합니다. 🎜

위 내용은 git의 기록 지우기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Git : The Technology, Github : 플랫폼Git : The Technology, Github : 플랫폼Apr 28, 2025 am 12:09 AM

GIT는 2005 년 Linus Torvaz가 만든 분산 버전 제어 시스템이며 Github는 GIT를 기반으로 한 온라인 협업 플랫폼입니다. GIT는 스냅 샷을 통해 파일 변경을 기록하고 브랜치 모델을 지원합니다. Github는 풀 레크스와 같은 도구를 제공하여 협업 효율성을 향상시킵니다.

Github의 목적 : 버전 제어, 협업 등Github의 목적 : 버전 제어, 협업 등Apr 27, 2025 am 12:05 AM

GitHub는 버전 제어 도구 일뿐 만 아니라 협업, 프로젝트 관리 및 커뮤니티 커뮤니케이션 기능을 제공합니다. 1) 버전 제어 : GIT를 사용하여 코드 변경을 추적합니다. 2) 협업 : PullRequest를 통해 코드 변경을 제출합니다. 3) 프로젝트 관리 : 문제와 프로젝트 섹션을 사용하여 작업을 관리합니다. 4) 커뮤니티 커뮤니케이션 : 포크를 통해 배우고 의사 소통하고 오픈 소스 프로젝트에 참여합니다.

Github vs. Git : 주요 차이점 이해Github vs. Git : 주요 차이점 이해Apr 26, 2025 am 12:12 AM

Git과 Github는 다른 도구입니다. Git은 버전 제어 시스템이며 Github는 Git을 기반으로 한 온라인 플랫폼입니다. GIT는 코드 버전을 관리하는 데 사용되며 GitHub은 협업 및 호스팅 기능을 제공합니다.

GitHub : 코드 호스팅, 협업 및 버전 제어GitHub : 코드 호스팅, 협업 및 버전 제어Apr 25, 2025 am 12:23 AM

GitHub는 GIT를 기반으로 한 분산 버전 제어 시스템으로 버전 제어, 협업 및 코드 호스팅의 핵심 기능을 제공합니다. 1) 리포지토리 생성, 복제, 커밋 및 변경 변경이 기본 사용법입니다. 2) 고급 사용법에는 자동화에 githubactions를 사용하고 GitHubPages에 정적 웹 사이트를 배포하고 보안 기능을 사용하여 코드를 보호하는 것이 포함됩니다. 3) 병합 충돌, 권한 문제 및 네트워크 연결 문제와 같은 일반적인 오류는 수동으로 갈등을 해결하고 창고 소유자에게 연락하고 프록시를 설정함으로써 디버깅 할 수 있습니다. 4) 워크 플로를 최적화하는 방법에는 분기 전략, 자동 테스트 및 CI/CD, 코드 검토, 문서 및 주석을 명확하게 유지하는 것이 포함됩니다.

GIT : 도구, Github : 서비스GIT : 도구, Github : 서비스Apr 24, 2025 am 12:01 AM

Git 및 Github는 다른 도구입니다. Git은 분산 버전 제어 시스템이며 Github는 GIT를 기반으로 한 온라인 협업 플랫폼입니다. GIT는 작업 영역, 임시 저장 공간 및 로컬 창고를 통해 코드를 관리하고 Gitinit, Gitclone 등과 같은 일반적인 명령을 사용합니다. GitHub에는 코드 호스팅, 풀 레큐스트, 발행 등과 같은 기능이 제공됩니다. 기본 프로세스에는 리포지토리 생성, 코드 푸시 및 풀 레 퀘스트와의 공동 작업이 포함됩니다.

GIT : 버전 제어의 핵심, Github : 소셜 코딩GIT : 버전 제어의 핵심, Github : 소셜 코딩Apr 23, 2025 am 12:04 AM

Git과 Github는 최신 소프트웨어 개발을위한 핵심 도구입니다. GIT는 리포지토리, 분기, 커밋 및 합병을 통해 코드를 관리 할 수있는 버전 제어 기능을 제공합니다. GitHub는 문제 및 풀 레크와 같은 코드 호스팅 및 협업 기능을 제공합니다. GIT와 GitHub를 사용하면 개발 효율성과 팀 협업 기능을 크게 향상시킬 수 있습니다.

GIT : 버전 제어 시스템, GitHub : 호스팅 플랫폼GIT : 버전 제어 시스템, GitHub : 호스팅 플랫폼Apr 22, 2025 am 12:02 AM

GIT는 2005 년 Linus Torvaz가 개발 한 분산 버전 제어 시스템이며 Github는 2008 년에 설립 된 GIT 기반 코드 호스팅 플랫폼입니다. GIT는 Snapshot Management 파일을 통한 분기 및 병합을 지원하며 Github는 풀 요청, 문제 추적 및 코드 검토 기능을 제공하여 팀 공동 작업을 용이하게합니다.

Git 및 Github : 비교 분석Git 및 Github : 비교 분석Apr 21, 2025 am 12:10 AM

Git과 Github는 최신 소프트웨어 개발의 핵심 도구입니다. GIT는 분산 버전 제어 시스템이며 GitHub는 GIT 기반 코드 호스팅 플랫폼입니다. GIT의 핵심 기능에는 버전 제어 및 지점 관리가 포함되며 Github은 협업 및 프로젝트 관리 도구를 제공합니다. GIT를 사용할 때 개발자는 파일 변경을 추적하고 함께 작업 할 수 있습니다. GitHub를 사용할 때 팀은 PullRequest 및 문제를 통해 협력 할 수 있습니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

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

뜨거운 도구

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기