git에서 기록 커밋을 삭제하는 방법
최근에는 강력한 버전 제어 도구인 Git이 개발 팀 사이에서 점점 인기를 얻고 있습니다. 하지만 Git을 사용하다 보면 가끔 잘못된 커밋이 나타날 수 있고, 이러한 커밋이 프로젝트에 부정적인 영향을 미칠 수도 있습니다. 이러한 기록 커밋을 삭제하는 방법은 Git 사용자가 자주 직면하는 문제가 되었습니다. 이 문서에서는 Git에서 기록 커밋을 삭제하는 방법을 자세히 설명합니다.
1. Git 제출 내역
Git 제출 내역은 여러 개의 제출로 구성됩니다. Git에서 커밋을 할 때마다 새로운 커밋이 생성됩니다. 각 제출물에는 자체 식별자(SHA)가 있으며 제출물 작성자, 날짜, 제출물 설명 등의 정보가 포함되어 있습니다.
Git 명령줄이나 Git 클라이언트 도구를 통해 Git의 커밋 기록을 볼 수 있습니다. 예를 들어 Git 명령줄에서 다음 명령을 사용하면 이 프로젝트의 커밋 기록을 볼 수 있습니다.
git log
이 명령은 현재 브랜치의 모든 커밋을 역순으로 나열합니다. 각 커밋에는 자체 SHA, 커미터 이름과 이메일, 커밋 날짜, 커밋 메시지가 있습니다.
2. 과거 제출물을 삭제하는 이유
공동 개발 과정에서 잘못된 제출물이 발생하게 되는 많은 인적 요인이 있을 것입니다. "잘못된 제출물"은 오류, 보안 취약성, 민감한 정보 등을 포함할 수 있는 제출물입니다. 이러한 잘못된 커밋이 메인라인 브랜치에 병합되면 프로젝트의 다른 부분에 부정적인 영향을 미칠 수 있습니다.
또한, 비밀번호, API 키, 기타 민감한 정보 등 코드를 제출하기 전에 다른 사람에게 보여주고 싶지 않은 콘텐츠를 포함하는 경우 제출 후 노출될 수 있습니다. 현재로서는 제출 기록을 삭제하는 것이 사용자 개인정보를 보호하는 방법입니다.
3. Git에서 기록 커밋을 삭제하는 방법
Git에서는 기록을 다시 작성하는 방법과 Git의 필터링 메커니즘을 사용하는 두 가지 방법이 있습니다.
- 기록 다시 쓰기
기록 다시 쓰기는 실제로 기록 커밋을 수정하여 수행됩니다. 이는 이미 게시된 커밋을 변경하고 재배열하는 것을 의미합니다. Git 커밋 기록을 삭제하는 단계는 다음과 같습니다.
(1) 다음 명령을 사용하여 커밋 기록을 확인합니다.
git log
(2) 삭제하려는 커밋의 SHA를 찾아 기록합니다.
(3) 기록을 다시 쓰려면 다음 명령을 사용하십시오. 이 명령에서 SHA를 삭제하려는 커밋의 SHA로 바꿉니다.
git rebase -i SHA^
이 명령은 선택한 커밋의 마지막 커밋 이후 모든 커밋 목록이 포함된 편집기를 엽니다.
(4) 삭제하려는 커밋 앞의 "선택"을 "삭제"로 변경하거나 파운드 기호로 해당 줄을 주석 처리합니다. 편집기를 저장하고 닫습니다.
(5) 다음 명령을 실행하여 Git에서 커밋을 강제로 덮어씁니다.
git push --force
마지막으로 다음 명령을 사용하여 커밋 기록을 성공적으로 삭제했는지 확인할 수 있습니다.
git log
- Git 필터링 메커니즘 사용
In Git, filter-branch 명령은 커밋 기록을 삭제하는 데 도움이 될 수 있습니다. 이 명령은 전체 저장소를 복사하고 지정된 필터를 각 커밋에 적용합니다. 다음은 Git의 필터링 메커니즘을 사용하여 Git 커밋 기록을 삭제하는 단계입니다.
(1) 다음 명령을 사용하여 복사본 저장소를 만듭니다.
git clone --mirror <Git URL>
(2) 다음 명령을 사용하여 복사본 저장소를 입력합니다.
cd <repository name>.git
(3) 기록 커밋을 삭제하려면 다음 명령을 사용합니다.
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch <filename>" --prune-empty --tag-name-filter cat -- --all
이 명령은
(4) 다음 명령을 사용하여 변경 사항을 Git 저장소에 푸시합니다.
git push --all --force
마지막으로 다음 명령을 사용하여 커밋 기록이 성공적으로 삭제되었는지 확인할 수 있습니다.
git log
IV 요약
기록을 사용하거나 Git의 필터링 메커니즘을 사용하면 Git에서 기록 커밋을 삭제할 수 있습니다. 그러나 커밋 기록을 삭제하기 전에 신중하게 생각하고 모든 팀원이 변경의 영향을 이해했는지 확인해야 합니다. 또한 저장소 오버헤드를 줄이기 위해 변경 사항을 병합하기 전에 Git 리포지토리를 정기적으로 정리해야 합니다.
위 내용은 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를 통해 로컬로 프로젝트를 다운로드하려면 다음 단계를 따르십시오. GIT를 설치하십시오. 프로젝트 디렉토리로 이동하십시오. 다음 명령을 사용하여 원격 저장소 클로닝 : git 클론 https://github.com/username/repository-name.git

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

Git Commit은 프로젝트의 현재 상태에 대한 스냅 샷을 저장하기 위해 파일 변경을 GIT 저장소에 기록하는 명령입니다. 사용 방법은 다음과 같습니다. 임시 저장 영역에 변경 사항 추가 제출 메시지를 저장하고 종료하기 위해 간결하고 유익한 제출 메시지를 작성하여 제출을 완료하기 위해 제출물을 완료하십시오. 제출자에 서명을 추가하여 제출 내용을보기 위해 GIT 로그를 사용하십시오.

해결 : 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 기술이 필요한 경우 git을 강조 표시하십시오. 2. 직위가 커뮤니티 참여를 가치있게 평가하면 Github를 보여주십시오. 3. 사용 경험과 프로젝트 사례를 자세히 설명하고 완전한 문장으로 끝내십시오.
