로컬 커밋을 취소하는 몇 가지 방법이 있습니다. 가장 일반적인 것은 GIT 재설정 명령을 사용하는 것입니다. git 재설정 명령을 사용하는 것입니다. git reset 명령을 사용하는 것입니다. -소프트 헤드^: 마지막 커밋을 취소하고, 임시 저장 영역에서 수정을 유지하고 -혼합 된 헤드^또는 -혼합 된 : 마지막 커밋을 취소하고, 마지막 커밋으로 다시 수정하십시오. 취소하는보다 진보 된 방법은 대화식 Rebase Git Rebase -I를 사용하는 것입니다. 이는 부분 커밋 만 취소하거나 커밋 정보를 수정하는 것과 같은보다 세분화 된 제어를 가능하게합니다.
git에서 로컬 커밋을 취소하는 방법? 이 질문은 굉장합니다!
일부 재향 군인조차도 많은 초보자가 Git의 커밋 작전에 빠질 것입니다. 제출하거나 코드가 잘못되었거나 제출 정보가 잘못 작성된 경우 어떻게해야합니까? 당황하지 말고 Git의 강력한 실행 취소는 물과 화재로부터 당신을 구할 수 있습니다. 이 기사를 읽은 후에는 Undoing Commit의 방법을 마스터 할 수있을뿐만 아니라 미래에 동일한 실수를 피하기 위해 GIT의 작업 메커니즘에 대해 더 깊이 이해할 수 있습니다.
우선, 우리는 분명해야합니다. Git의 취소는 본질적으로 Git의 역사를 수정하는 것입니다. 파일을 삭제하는 것만 큼 간단하지 않으며 전체 버전 라이브러리에 영향을 미칩니다. 따라서주의해서 작동하는 것이 매우 중요합니다! 백업은 항상 중요한 프로젝트의 경우 항상 우선입니다.
기본 검토 : 커밋과 헤드 이해
GIT는 커밋을 사용하여 각 코드 수정을 기록합니다. 각 커밋에는 고유 식별자 (SHA-1 해시 값)가 있습니다. 헤드 포인터는 현재 지점의 최신 커밋을 가리 킵니다. 이 두 개념을 이해함으로써, 당신은 취소 커밋이 실제로 헤드 포인터에 의해 가리키는 커밋을 수정하고 있음을 이해할 것입니다.
커밋을 취소하는 몇 가지 방법
가장 일반적인 시나리오는 방금 커밋을 제출하고 즉시 문제를 찾는 것입니다. 현재 git reset
명령을 사용할 수 있습니다. 이 명령은 매우 강력하고 유연한 사용법을 가지고 있지만 문제를 제대로 사용하면 문제를 일으키기 쉽습니다.
<code class="bash">git reset --soft HEAD^ # 撤销上一次commit,修改保留在暂存区git reset --mixed HEAD^ # 撤销上一次commit,修改回到工作区(这是默认行为,可以省略--mixed) git reset --hard HEAD^ # 撤销上一次commit,修改全部丢弃</code>
HEAD^
이전 커밋을 말하고, HEAD~2
이전 커밋 등을 나타냅니다. --soft
수정, --mixed
(기본값) 수정을 작업 공간으로 반환하고 --hard
직접 변형을 폐기합니다. 선택할 옵션은 보관하려는 수정에 따라 다릅니다. 나는 개인적으로 일반적으로 사용합니다 --mixed
때문에 수정이 실제로 필요하지 않은지 확인할 수 있습니다.
여러 커밋을 취소하려면 다음을 수행 할 수 있습니다.
<code class="bash">git reset --hard HEAD~3 # 撤销最近三个commit</code>
보다 고급 취소 : 대화식 Rebase
커밋의 일부만 취소하거나 커밋 정보를 수정하는 것과 같이 더 많은 세분화 된 제어가 필요한 경우 git rebase -i
명령이 무기입니다. 이 도구는 문서 편집과 같은 GIT의 기록을 수정할 수있는 강력한 도구입니다.
<code class="bash">git rebase -i HEAD~3 # 打开交互式rebase,修改最近三个commit</code>
이것은 가장 최근 3 개의 커밋을 나열하는 텍스트 편집기를 열어줍니다. 커밋을 edit
위해 pick
변경 또는 Commit을 병합하기 위해 squash
로 변경하거나 커밋을 drop
등 각 커밋의 명령을 수정할 수 있습니다. 이 작업은 GIT의 역사를 수정하므로 조심하십시오! rebase
사용하기 전에 현지 지점이 다른 지점에 의해 추진되지 않도록하십시오.
일반적인 오류 및 디버깅
-
git reset --hard
너무 많이 사용됩니다. 수정을 직접 폐기하므로주의해서 사용하십시오. 수정할 필요가 없다고 확신하지 않는 한이 옵션을 사용하지 마십시오. -
git push --force
잊어 버렸습니다 : 당신이 잘못된 커밋을 추진했다면, 로컬 커밋을 취소하는 것만으로는 충분하지 않습니다.git push --force
로 원격 저장소를 업데이트해야합니다. 그러나 여기에는 원격 저장소의 기록이 포함되므로주의해서 사용해야하며 팀워크에서 피하는 것이 가장 좋습니다. 이 트릭은 개인 프로젝트에서 사용해도 괜찮으므로 팀워크를 피하십시오.
성능 최적화 및 모범 사례
자주 커밋 할 때 git reset
및 git rebase
사용하면 특히 프로젝트가 더 클 때 효율성에 영향을 미칩니다. 좋은 코드 제출 습관을 개발하고 각 커밋 수정을 최대한 작고 독립적으로 유지하여 쉽게 롤백하고 풀릴 수 있습니다. 명확한 커밋 정보를 작성하면 코드 수정 기록을 더 잘 이해하는 데 도움이 될 수 있습니다.
요컨대, Git 's Undo는 매우 강력하지만주의 해서도 사용해야합니다. git reset
과 git rebase
의 차이와 사용을 이해함으로써 만 GIT를 파악하고 불필요한 문제를 피할 수 있습니다. 백업은 항상 왕이라는 것을 기억하십시오! 더 많은 연습과 더 많은 연습을 통해서만 GIT 마스터가 될 수 있습니다!
위 내용은 로컬 커밋을 취소하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Git과 Github는 현대 개발자에게 필수 도구입니다. 1. 버전 제어에 GIT를 사용하십시오 : 병렬 개발을위한 분기를 만들고, 분기를 병합하고, 롤백 오류. 2. 팀 협업에 GitHub를 사용하십시오 : 풀 레크를 통한 코드 검토를 통해 병합 충돌을 해결하십시오. 3. 실용적인 팁 및 모범 사례 : 정기적으로 제출하고, 메시지를 명확하게 제출하고, .gitignore를 사용하고, 코드 기반을 정기적으로 백업하십시오.

Git과 Github는 동일하지 않습니다. Git은 분산 버전 제어 시스템이며 Github는 Git을 기반으로 한 온라인 플랫폼입니다. GIT는 개발자가 코드 버전을 관리하고 분기, 병합 및 기타 기능을 통해 협업을 달성하도록 도와줍니다. GitHub은 코드 호스팅, 검토, 문제 관리 및 소셜 상호 작용 기능을 제공하여 GIT의 협업 기능을 향상시킵니다.

GIT를 설치 한 후보다 효율적으로 사용하려면 다음 설정이 필요합니다. 사용자 정보 설정 (이름 및 사서함) 텍스트 편집기 선택 외부 병합 도구 생성 SSH 키 설정을 무시하십시오. 파일 모드를 무시하십시오.

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

느린 GIT 다운로드의 원인에는 네트워크 연결 불량, GIT 서버 문제, 대규모 파일 또는 대규모 제출, GIT 구성 문제, 컴퓨터 리소스 불충분 및 맬웨어와 같은 기타 요소가 포함됩니다. 해결 방법에는 네트워크 연결 개선, 방화벽 설정 조정, 불필요한 파일 또는 제출물 다운로드 방지, GIT 구성 최적화, 적절한 컴퓨터 리소스 제공 및 맬웨어 스캔 및 제거가 포함됩니다.

로컬 git 코드를 업데이트하는 방법은 무엇입니까? Git Fetch를 사용하여 원격 저장소에서 최신 변경 사항을 가져옵니다. Git Merge Origin/& Lt; 원격 지점 이름 & gt; 합병으로 인해 발생하는 갈등을 해결합니다. git commit -m "merge branch & lt; 원격 브랜치 이름 & gt;" 병합 변경 사항을 제출하고 업데이트를 적용합니다.

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

다음 단계를 통해 git 브랜치를 삭제할 수 있습니다. 1. 로컬 브랜치 삭제 : Git Branch -D & Lt; Branch -Name & gt; 명령; 2. 원격 분기 삭제 : Git Push & Lt; Remote-Name & gt; -Delete & lt; branch-name & gt; 명령; 3. 보호 지점 : GIT 구성 분기를 사용하십시오. & lt; branch-name & gt;. 보호 분기 설정을 추가하기 위해 true.


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

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

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

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