04_GitReset

Jan 09, 2024
04_GitReset

Reset 의 기본 사용 방법

git reset --hard [hashCode] # reset 기본 명령어
Reset에는 3가지 옵션인 Soft, Mixed, Hard가 있는데 주로 Hard를 사용하여 Hard 사용법 만 기억해도 좋다! Soft : 커밋 로그 변경 시 필요 Mixed : 작업 영역의 내용 변경 시 필요 Hard : 위의 모두를 변경 시 필요
만약 Reset으로 돌아 갔는데 전의 파일로 다시 가고싶다면? → reflog를 이용하여 전의 commitHashCode를 조회하여 reset한다!
# 사용 방법! git reflog # 모든 commit 정보를 호출 git reset --hard [hashCode] # reflog의 hashCode를 확인 후 입력

Reset 의 사용

  • 주로 리펙토링의 과정에 많이 사용한다 → commit을 리펙토링 전에 하여 리펙토링 실패 시 원상 복구를 하기 위해서이다.
  • GitHub에 올린 것을 리셋 할 시에는 형상이 틀어질 수 있기 때문에 주의해야한다. → 만약 리셋을 꼭 해야한다면? 브런치를 만들어 강제로 푸쉬해준다. (이런 이유로 개발 시에는 항상 리셋용 브런치를 하나 만들어 둔다.)
  • GitReset은 한마디로 ‘헤더 옮기기’ 이다.

VCS (Version Control System)

  • 소프트웨어 개발에서 소스 코드의 변경 사항을 관리하는 시스템이다.
  • 여러 사람이 동시에 작업이 가능하다.
  • 롤백하거나, 누가 언제 어떤 변경을 했는지 확인이 가능하다.

DVCS (Distributed Version Control System)

  • 사용자가 저장소의 전체 사본을 가지고 작업하는 시스템이다.
  • 네트워크가 없는 환경에서도 작업이 가능하다.
  • 각 사용자의 로컬 저장소가 백업 역할을 할 수 있다
  • 동시 작업이 가능하며 병렬적으로 브랜치 관리를 할 수 있다.
Git은 DVCS에 속한다! 이건 꼭 기억하자! → 모든 곳에서 관리가 가능하다.
 
Share article

chodong