Git을 활용한 버전관리3

lbr·2022년 6월 28일
0

버전 되돌리기(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)하여 각각 업로드 해주어야 합니다.

다른 환경에서 시작하기

과정

  1. git clone 원격저장소주소 로 프로젝트를 가져옵니다.
    참고 : git clone 원격저장소주소 로 가져오는 branch는 master만 가져옵니다.
  2. github에 있는 다른 branch들의 확인하려면, git branch -r로 원격저장소에 있는 branch 목록들을 확인할 수 있습니다.
  3. 특정 branch를 가져오려면 git checkout -t origin/purple

branch 생성 및 삭제

branch 삭제

git checkout master
git branch -d purple

  1. 다운로드 받은 특정 branch를 삭제하려면 삭제하려는 branch에서 나와야합니다. 먼저 다른 branch로 이동 후(git checkout master),
  2. git branch -d purple 로 purple branch를 삭제할 수 있습니다.

branch 생성

git branch yellow
git checkout yellow

  1. yellow 브렌치 생성 후,

  2. 해당 브렌치로 이동

    <추가> 생성과 동시에 해당 브렌치로 이동하기.

    git checkout -b yellow

    • yellow 브렌치 생성 후, 바로 해당 브렌치로 이동합니다.

push 하기

  • 새로운 환경이므로 git push origin yellow 로 push를 할 경우, github에서 다시 인증 절차를 거쳐야 합니다.

충돌(Conflict)

push후 에러의 경우

해결방법 1

  • git reset --hard HEAD~1 로 되돌린다.
    - 가장 깔끔한 방법이지만 내가 수정한 수정사항을 전부 잃는다.

해결방법 2

  1. git pull origin master 로 github에서 최신 버전을 받아옵니다.
    • CONFLICT 메세지가 출력되고, VSCode 코드창에 현재 변경사항과 수신된 변경 사항을 동시에 출력하여 보여줍니다.
    • 변경 사항 비교 버튼을 클릭시 아래와 같은 화면으로 비교할 수도 있습니다.
  2. 최종적으로 수정이 끝났다면, 다시 push해 줍니다.

0개의 댓글