항상 잊어버리는 Git 명령어
Git 에 관해서는 제 편집기인 WebStorm 의 정말 잘 만들어진 통합에 너무 많이 의존하는 것 같습니다. 결과적으로 유용한 명령, 심지어 터미널에서 실행하는 경우가 거의 없는 간단한 명령도 가끔 잊어버립니다.
그래서 이 블로그 게시물을 주로 미래의 자신을 위해 공유하고 있습니다 😅.
마지막 커밋 되돌리기
아직 푸시되지 않은 마지막 커밋을 되돌리려면
reset 명령을 사용하여 이전 단계에서 기록을 되감을 수 있습니다.그러나 커밋이 이미 푸시된 경우 기록을 보존하고
revert 명령을 실행할 수 있습니다. 여기서 eec47301는 되돌릴 커밋의 개정 번호이며 예를 들어 git log 명령) 커밋과 푸시가 뒤따릅니다.git revert eec47301
또는
reset 명령과 --hard 옵션을 사용한 후 --force 옵션을 사용하여 기록을 보존하지 않고 되돌립니다.git reset --hard eec47301
현명하게 사용해야 하는 것은 말할 필요도 없습니다.
마지막 커밋 메시지 변경
마지막 커밋 메시지가 잘못되었거나 예를 들어 오타가 있는 경우
--amend 옵션을 사용하여 마지막 또는 가장 최근의 커밋 메시지를 수정할 수 있습니다.git commit --amend
커밋이 아직 푸시되지 않은 경우 다른 작업을 수행할 수 없습니다. 반대로 이미 푸시한 경우
--force 로 repo를 업데이트할 수 있습니다.git push --force
여러 커밋 메시지 변경
예를 들어 관련 이슈 번호를 지정하는 것을 잊어버린 경우 발생할 수 있는 여러 커밋 메시지를 수정하려는 경우
rebase 의 도움을 받아 진행할 수 있습니다.이 솔루션에 대한 크레딧은 Jaco Pretorius 및 Linuxize에서 제공한 것으로 이동합니다. 모든 영웅이 망토를 입는 것은 아닙니다!
수정을 시작하려면 다음 명령을 실행합니다. 여기서
2는 rebase를 수행하려는 커밋 수입니다.git rebase -i HEAD~2
이렇게 하면 각 커밋에 대한 변경 사항을 지정할 수 있는 프롬프트가 열립니다.
pick e68a142 my frst update
pick 1613f1e my scnd update
커밋 메시지를 변경하려면
pick (또는 짧은 버전 reword )로 r를 수정합니다.reword e68a142 my frst update
reword 1613f1e my scnd update
완료되면 저장(
:wq )하고 프롬프트가 자동으로 변경하려는 첫 번째 선택된 커밋으로 안내합니다.my frst update
메시지를 수정하고(
x 문자를 삭제하고, i 삽입 모드로 전환하고, a a를 추가하고 항상 Esc 편집 모드를 빠져나옴) 저장하면 프롬프트가 다시 자동으로 안내합니다. 변경하고 싶은 다음 커밋 메시지까지.my snd update
완료되면 터미널은 다음과 같이 표시됩니다.
❯ git rebase -i HEAD~2
[detached HEAD 1f02610] my first update
Date: Thu Apr 16 15:55:09 2020 +0200
1 file changed, 1 insertion(+), 1 deletion(-)
[detached HEAD 68d3edd] my second update
Date: Thu Apr 16 16:00:29 2020 +0200
1 file changed, 4 insertions(+)
Successfully rebased and updated refs/heads/master.
이 시점에서 우리의 기록은 로컬에서 다시 작성되지만 아직 리포지토리에서 업데이트되지 않았습니다. 이것이 우리가 이것을 푸시하는 이유입니다.
git push --force
리베이스 중단
위 프로세스를 실행하는 동안 문제가 발생하면
--abort 를 사용하여 리베이스 작업을 취소할 수 있습니다.git rebase --abort
병합 중단
중단에 대해 말하자면, 동일한 옵션을 사용하면서 병합을 종료하는 것도 가능합니다.
git merge --abort
태그 삭제
GitHub에서 릴리스를 삭제하면 릴리스가 삭제되지만 관련 태그는 삭제되지 않습니다. 일반적으로 브라우저를 사용하여 저장소로 돌아가면 여전히 표시됩니다.

이러한 태그를 제거하려면 Git 푸시와 옵션
--delete 뒤에 제거할 태그 이름을 사용하여 제거할 수 있습니다.git push --delete origin v0.0.1
요약
이번에는 이 명령줄을 기억할 수 있기를 바라지만 그렇지 않다면 적어도 어디에서 찾을 수 있는지 알 것입니다 😁.
집에 있어, 안전하게 있어!
다윗
Jonatan Lewczuk에 Unsplash님의 표지 사진
Reference
이 문제에 관하여(항상 잊어버리는 Git 명령어), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/daviddalbusco/git-commands-i-always-forget-5618텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)