카테고리 없음

[GitLab] 연동하기 - 세 번째: 여러 명령어

김 정 환 2020. 4. 19. 13:31
반응형

[ 이 게시글은 https://m.blog.naver.com/PostView.nhn?blogId=tkddlf4209&logNo=220737393340&proxyReferer=https%3A%2F%2Fwww.google.com%2F 를 대부분 참고했음을 알려들입니다. 유익한 정보가 많습니다. ]

 

 

 

Branch

  • Branch? 프로젝트를 만들다보면 여러 버전으로 나눌 때가 있습니다. A버전에서는 지도를 만들고 B버전에서는 주문 기능을 만들고 싶을 때가 있습니다. 이때 Brach를 사용하면 버전별로 프로젝트를 가지 뻗듯이 나눌 수 있습니다.
  • branch를 사용해 봅시다. 아래 명령어를 입력합니다.

  1. git branch :  branch 목록을 보여줍니다.
  2. git branch v1.0 : v1.0 이라는 branch를 생성합니다.
  3. git branch : v1.0 branch 가 생성되었습니다.
  4. git checkout v1.0 : v1.0 으로 작업 환경을 변경합니다.
  5. git branch : *(현재 작업)이 v1.0으로 옮겨졌습니다. 그리고 오른쪽 (master)가 (v1.0)으로 변경되었습니다.

 

  • Branch의 특성

v1.0에 파일을 하나 추가 합니다.

이제 checkout 명령어로 NewFile을 추가 하지 않았던 master branch로 이동합니다. v1.0 branch에 만들어 놓은 파일이 master로 이동했을 때에도 그대로 있습니다. 이러면 branch를 만드는 이유가 없습니다. 왜 이럴까요? 그 이유는 add와 commit을 수행하지 않았기 때문입니다. add와 commit이 수행되지 않은 파일은 어떤 branch와도 연결이 되지 않기 때문입니다.

 

다시 v1.0 branch로 이동합니다. 그리고 add와 commit을 수행하고 master branch로 이동해서 확인합니다. NewFile이 없어졌습니다. 

반면, v1.0으로 이동하면 NewFile이 있습니다.

 

데이터 추가/삭제/변경을 하면 꼭! add와 commit을 해주어야 합니다. 그래야 local repository에 변경된 내용이 적용됩니다.

 

Merge

  • merge? branch와 brach를 합치는 명령어 입니다. A branch에 B branch에 있는 파일들을 병합시킵니다. testing이라는 폴더를 새로 만들었습니다. 그리고 아래 명령어를 입력 합니다.

  1. git checkout -b A: A라는 branch를 만들고 작업환경을 A로 이동 (동시에)
  2. git touch a: a 파일을 만듭니다.
  3. git add --all & git commit -m: add와 commit으로 적용합니다.
  4. git checkout -b B
  5. git touch b
  6. git add --all & git commit -m
  7. git checkout A: A branch로 이동합니다. 그러면 a파일만 보이고 b파일은 보이지 않습니다.

   8. git merge B: 현재 작업 환경에서 B branch를 병합니다. 그러면 b가 병합되어서 보입니다.

현재 작업 환경에 다른 branch를 병합할 때, 수정된 내용이 있으면 conflict(충돌)이 일어납니다. 그러면 오류 내용을 보고 수정해서 다시 merge하면 됩니다.

 

 

Fetch

  • fetch? 원격 저장소(gitlab)에 있는 branch들을 local repository로 가져옵니다.
  • 아래 명령어를 입력합니다.

  1. git remote add origin <원격 저장소>
  2. git getch origin: gitlab에 있는 branch 정보들을 모두 가져옵니다.
반응형