GIT 파헤치기

Vegonia·2021년 4월 14일
0

90팩토리 git수업을 기반으로 작성하였습니다

GIT 기본 용어


원격 저장소: 원격 네트워크 상에 저장된 코드(git서버, origin)
로컬 저장소: 내 PC에 저장된 코드(코드가 저장된 폴더: 작업 트리)

즉, 순서는 작업트리들을 인덱스에 스테이징하고(add명령어) 인덱스에서 원격저장소에 commit한다

clone해보자


원격지의 main branch를 바라보고있다
원격지는 origin을 가리키고있다라는 설정이 기본으로 들어가있다( clone시!! )

stage에 추가를 해보자


untracked: stage영역(index영역)에 등록이 되어있지 않다


(작업트리가 많을 시 git add . 를 적어준다)

원격지에 보내자(commit)


스테이지영역에서 커밋영역으로 다 들어왔다!!(중요)


이후에는 끌어오는 작업(clone)을 pull로 가져온다


push를 진행하였고 commit정보가 올라가지게된다


추가가 되었다!!


추적을 해서 커밋을 추적하고 돌아갈수있다 network에서 현재와 과거를(커밋하기전상태)를 확인해볼 수 있다

명령어

web상에서 수정시?? 다른사람이 바로 웹에서 커밋을 한다면?? (상황가정)
원격에는 투커밋이 되지만, 내 로컬은 원커밋상태이므로 작업시 충돌이 생길것이다


hello_world파일을 수정을하고 커밋을 해보자


변경이 되었다


수정이 되었다는게 감지가 되었다
원격 리포지가 기준이되기때문에 pull로 가져와야한다
그래야 최신정보에 정보를 추가하는 것이다(결론)

GIT 브랜치

브랜치란?

브랜치: 작업 분기, 병렬 작업 단위
master: 기본적으로 생성되는 주 브랜치(배포판, 이걸로 최신업데이트한다)
새로운 기능은 생성-> 작업-> 병합
ex)게임의 save기능이라고 생각하면된다

브랜치 생성


메모장 텍스트 내용 변경후 add, modified확인


그냥 push하지말고 목적지를 명시해줘야한다
origin feature-A를 원격지에도 파줘라!!(로컬에도 팠으니~)


분기가 생성된것을 알 수 있다


다른 branch로 이동


main으로 이동해서 갖고올 브랜치를 병합한다
-d 옵션으로 지운다


push하는 과정


분기로 작성했으면 주 main으로 병합을 꼭 해야한다!!!!!!!!!

CONFLICT를 받아들이자


처음부터 잘짜도록 노력을 해보자, 문제가 발생시 브랜치유저들끼리 잘 소통을 해보자

변경 내용 수정: git rebase -i
언제? 토픽 브랜치 수정 전, 이미 commit한 내용에 오류가 있을 경우
어떻게? 코드 수정 후 commit한 뒤 바로 앞의 commit에 합쳐 버리면 됨

profile
For Peace

0개의 댓글