Git은 일반적으로 사용되는 버전 관리 도구이며 프로젝트 개발에 널리 사용됩니다. 프로젝트 개발 중에 우리는 일반적으로 코드 제출, 브랜치 병합 및 기타 작업을 포함하여 버전 제어 및 관리를 위해 다양한 git 명령을 사용합니다. 그러나 경우에 따라 민감한 정보를 삭제하거나 불필요한 커밋 기록을 삭제하는 등 Git 기록을 지워야 할 수도 있습니다. 아래에서는 Git 기록을 지우는 방법에 대해 설명합니다.
1. 백업
Git 기록 삭제 작업을 수행하기 전에 작업 중 오류나 예상치 못한 상황을 방지하기 위해 백업이 필요합니다. 필요한 경우 코드 베이스를 복원할 수 있도록 현재 코드 베이스를 안전한 장소에 백업하는 것이 중요합니다. Git의 패키징 명령을 사용하여 프로젝트를 압축 파일로 백업할 수 있습니다. 예:
git archive --format zip --output backup.zip HEAD
이 명령은 현재 코드 베이스를 ZIP 파일로 패키징하고 backup.zip에 저장합니다.
2. 기록 지우기
- 단일 파일의 기록을 지우려면 명령을 사용하세요.
단일 파일의 기록을 삭제하려면 다음 명령을 사용하면 됩니다.
$ git filter-branch --index-filter 'git rm --cached --ignore-unmatch path/to/file' --prune-empty -- --all
이 명령은 대상 파일을 기록에서 완전히 삭제합니다. 그 중 path/to/file
은 지워질 파일 경로를 나타냅니다. path/to/file
表示要清除的文件路径。
- 使用命令清除 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>입니다.
55d4d98de4caf2ac1a8f783624c인 커밋을 삭제하려는 경우 58e533500f3d7 및 후속 기록 기록을 사용하면 다음 명령을 실행할 수 있습니다. 🎜rrreee 🎜4) 대화형 창을 편집하여 대상 커밋을 표시합니다. 🎜🎜대화형 모드에서는 삭제해야 할 대상 커밋을 표시해야 합니다. "drop"으로 지정한 다음 파일을 저장하고 종료합니다. 예는 다음과 같습니다. 🎜rrreee🎜위 예에서는 <code>55d4d98
기록이 삭제되고 44a0c2c
기록이 최신 커밋이 됩니다. 🎜🎜5) 이전 기록을 지우려면 다음 명령을 사용하세요. 🎜rrreee🎜 이 명령은 "drop"으로 표시된 커밋과 후속 커밋을 지울 수 있습니다. 🎜🎜6) 원격 창고로 푸시🎜🎜마지막으로 원격 창고의 내역 기록을 업데이트하고 내역 기록의 정확성을 보장하려면 원격 창고로 강제 푸시해야 합니다. 🎜rrreee🎜다음과 같이 작동해야 한다는 점에 유의하세요. 위 명령을 실행할 때 주의하고 코드 베이스를 백업했는지 확인하세요. 한번 삭제하면 복원이 불가능하기 때문입니다. 🎜🎜요약🎜🎜이 글에서는 Git을 사용하여 기록을 삭제하는 방법을 소개합니다. 이러한 작업을 수행하기 전에 기록 기록 작업의 결과를 고려하고 돌이킬 수 없는 손실을 방지하기 위해 백업을 만들어야 합니다. 동시에, 역사적 기록을 지우는 것을 지양하고 필요한 경우에만 활용하도록 노력해야 합니다. 🎜
위 내용은 git의 기록 지우기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

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

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

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

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

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

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

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


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

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

WebStorm Mac 버전
유용한 JavaScript 개발 도구

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

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

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기
