Git 기본 개념(2) - RESET, BRANCH

2016. 10. 13. 17:26Programming/Git

1. HEAD, reset


1) git show HEAD(가장 최근 commit된 것)



<commit 정보와 함께, 최근 추가된 line이 녹색으로 표시됨>



2) git checkout HEAD scene-5.txt
수정 전 내용으로 복귀

* 복수 파일을 Staging(대기실)에 올리기
git add 파일1 파일2

**commit을 하면 대기실에 있는 파일들이 '한꺼번에' 올라간다.

4) 대기실에 잘못 올린 파일을 제거하기
git reset HEAD 파일명


5) 등록된 commit reset(일종의 타임머신)
git reset [SHA(commit의 주민등록번호) 앞 7글자]

어제자 SHA를 reset하면 그 때까지 commit이 모두 리셋됨

<a, b, c, d, HEAD는 모두 commit을 뜻함>



2. branch(가지; 분기)

1) master => 기본(default) branch


<New Branch는 분기 전 Master가 갖고 있는 정보를 모두 갖고 있음>


2) 현재 branch 확인하기

git branch


3) 새로운 branch 생성

git branch 이름


<현재 포커스된 branch는 *가 붙음>


4) 포커스를 master에서 fencing으로 바꾸기

git checkout fencing



5) 새 branch에 commit을 저장(일반적 commit 저장과 동일)

git add 파일명

git commit -m "메시지"




6) 새 Branch 내용을 Master와 합치려면?

ㄱ. [변경 내용 받을 branch]에 focus함.

ㄴ. git merge [내용 주는 Branch]


7) Conflict(충돌)

branch A의 commit 내용과 branch B 것이 다른 경우

merge시 git이 어떤 걸 반영해야하나 헷갈려하는 것


*해결법

파일 안에 들어가 필요 없는 부분 모두 제거하기(다른 branch 내용 + git marking)



8) Branch 제거

git branch -d [branch 이름]



'Programming > Git' 카테고리의 다른 글

Git 기본 개념(3) - FETCH, PUSH/PULL  (0) 2016.10.14
Git 기본 개념(1) - ADD, COMMIT  (0) 2016.10.13