일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Next.js
- Image 컴포넌트
- Server Side Rendering
- git checkout
- react
- Next/Image 캐싱
- 파이썬
- 파이썬 웹크롤링
- PubSub 패턴
- 비디오 스트리밍
- 네이버 부캠
- beautifulsoup
- 자바스크립트
- 웹크롤링
- 프로그래머스
- c++
- 브라우저 동작
- 자바스크립트 컴파일
- 멘션 추천 기능
- React.js
- 네이버 부스트캠프
- 네이버 부스트캠프 멤버십
- 스택
- 파이썬 코딩테스트
- 자바스크립트 객체
- 부스트캠프
- React ssr
- 씨쁠쁠
- 코딩테스트
- 자바 프로젝트
Archives
- Today
- Total
코린이의 개발 일지
[git 사용하기] - 버전 관리 (checkout, restore, reset, revert) 본문
반응형
checkout
- 크게 두가지 기능을 한다.
- branch 혹은 Commit 전환(switch)
- 내용 되돌리기 (restore)
이번 포스팅에서는 내용 되돌리기 (버전관리) 기능을 살펴보자
내용 되돌리기 (버전관리)
모든 변경 사항 취소
git checkout .
- 대상: 아직 add / commit 되지 않은 내용 (Working Directory에 있는 변경 내용)
되돌리고 싶은 파일은 추적 되고 있어야 한다.
- checkout으로 지워버린 내용은, commit하지 않고 지운 내용이기 때문에 다시 복구할 수 없다.
git restore .
- 같은 기능이며 checkout에서 파일 복구하는 기능만 따로 뺀 명령어라고 한다.
- 최근에는 이 명령어를 더 많이 사용한다고 한다.
특정 파일에서 작업한 내용 삭제
git checkout -- {File Name}
- 대상: 아직 add / commit 되지 않은 소스 (Working Directory에 있는 변경 내용)
- 추적되고 있는 파일명이어야 한다.
- 다른 파일의 변경 내용은 바뀌지 않는다.
git restore {File Name}
git add 명령으로 staging area에 올라간 파일들을 다시 working directory로 되돌리는 방법
git restore --staged <파일명>
특정 Commit 버전으로 전환
git checkout {Commit Hash}
ex) git checkout 3bb6d5da38b98eac5d18bb71c652b34d5a8b4727
- 아직 Commit 하지 않은 내용이 있다면 전환되지 않는다.
- 커밋 해시는 git log 명령어를 통해 확인할 수 있다.
git restore --source=<hash> <파일명>
전체 다 되돌리려면 파일명에 . 점하나 찍어주면 된다.
다시 최신 커밋으로 돌아가기
git checkout master
⇒ checkout은 사용법만 알아두고 restore을 위주로 쓰는 것이 좋을 거 같다.
checkout으로 돌아가면 이전 커밋 시점으로 돌아가기만 하는데,
restore을 사용하게 되면 이전 커밋으로 돌아간 시점의 파일들이 새로 추가 되는 형태이다. (즉 add, commit 가능) - 이후의 커밋 로그들이 사라지진 않는다.
특정 커밋으로 되돌아가기
reset 명령어
- 특정 커밋으로 되돌아간다는 점에서 restore와 비슷하지만 되돌아간 시점 이후 모든 커밋들이 초기화 되어 히스토리에서 사라진다. 따라서 사용시 주의가 필요하다.
git reset <hash>
특정 커밋만 취소
revert 명령어
- 특정 커밋만 제거
git revert <hash>
출처:
반응형
'Git 사용하기' 카테고리의 다른 글
[git 사용하기] branch 기능 사용하기 (0) | 2022.08.31 |
---|
Comments