버전 되돌리기(Reset)
예시 : git reset --hard HEAD~1
- HEAD~1 : HEAD에서 뒤로 한 버전 되돌립니다. (두 버전 뒤는 HEAD~2)
- 되돌린 후 git log를 확인해보면 최신버전이 없어져있고, 그 이전 버전이 최신버전으로 되어있습니다.
예시 : git reset --hard ORIG_HEAD
- ORIG_HEAD : 기존의 HEAD 로 되돌립니다.
- 되돌린 후, 다음 명령을 입력하기 전까지는 이 명령어를 통하여 한번은 되돌리기 전 상태로 돌아갈 수 있습니다.
git push origin master
git checkout purple
git push origin purple
- 한개의 프로젝트의 서로 다른 branch들을 업로드 할 때에는 해당 branch로 이동(checkout)하여 각각 업로드 해주어야 합니다.
다른 환경에서 시작하기
과정
- git clone 원격저장소주소 로 프로젝트를 가져옵니다.
참고 : git clone 원격저장소주소 로 가져오는 branch는 master만 가져옵니다.
- github에 있는 다른 branch들의 확인하려면, git branch -r로 원격저장소에 있는 branch 목록들을 확인할 수 있습니다.
- 특정 branch를 가져오려면 git checkout -t origin/purple
branch 생성 및 삭제
branch 삭제
git checkout master
git branch -d purple
- 다운로드 받은 특정 branch를 삭제하려면 삭제하려는 branch에서 나와야합니다. 먼저 다른 branch로 이동 후(git checkout master),
- git branch -d purple 로 purple branch를 삭제할 수 있습니다.
branch 생성
git branch yellow
git checkout yellow
-
yellow 브렌치 생성 후,
-
해당 브렌치로 이동
<추가> 생성과 동시에 해당 브렌치로 이동하기.
git checkout -b yellow
- yellow 브렌치 생성 후, 바로 해당 브렌치로 이동합니다.
push 하기
- 새로운 환경이므로 git push origin yellow 로 push를 할 경우, github에서 다시 인증 절차를 거쳐야 합니다.
충돌(Conflict)
push후 에러의 경우
해결방법 1
- git reset --hard HEAD~1 로 되돌린다.
- 가장 깔끔한 방법이지만 내가 수정한 수정사항을 전부 잃는다.
해결방법 2
- git pull origin master 로 github에서 최신 버전을 받아옵니다.
- CONFLICT 메세지가 출력되고, VSCode 코드창에 현재 변경사항과 수신된 변경 사항을 동시에 출력하여 보여줍니다.

- 변경 사항 비교 버튼을 클릭시 아래와 같은 화면으로 비교할 수도 있습니다.

- 최종적으로 수정이 끝났다면, 다시 push해 줍니다.