코드프레소 - Git branch 실습 내용 1

2022. 1. 21. 15:38Github

* 해당 강의는 코드프레소 자바 웹 개발 체험단 '실무자가 알려주는 Git 프로젝트 관리'를 듣고 정리한 내용입니다. 

 

Git branch 

브랜치는 일종의 '포인터'인데, 포인터는 가르키는 역할을 한다. 

브랜치가 가르키는 것은? Commit (커밋) 

만약 브랜치는 생성이 되었고 커밋이 없다면? Git Bash 창에서 아무런 응답이 없다. 

즉, 첫 번째 커밋이 만들어져야 해당 브랜치가 커밋을 가르키는 것이다. 

 

Head가 가리키는 것은 결국 '현재 작업하는 최신 파일' 

헤드를 변경하는 것은 작업을 변경하는 것과 같다. 

 

기능에 따라 다른 브랜치를 사용하는데, 이는 개발팀의 운영 전략이다.

Head는 git checkout 변경할 브랜치명 으로 해서 이동할 브랜치로 이동한다. 

 

로컬저장소의 상태(git status)는 Head가 가리키는 마지막 커밋이 최신이 되고 작업 디렉토리 파일 상태도 변경된다. 

 

실습 내용 

1) git init로 초기화 

2) ls -la로 디렉토리 확인(.git/ 이 생성되었다) 

3) git branch (아무런 반응 없음. 커밋이 없기 때문에) 

4) vi MainService.java 생성 후 내용 입력 (i는 insert로 내용 삽입, esc로 내용 삽입 종료하고 :wq로 vi 에디터 빠져나오기) 

5) git add MainService.java 로 저장소에 추가 

6) git status -> 커밋이 아직 없다고 뜬다 (바로 다음 실행 쉘로 넘어감) 

7) git commit -m "Commit 1 on master branch" 로 커밋하기

8) git log로 히스토리 확인하보면 HEAD는 master 브랜치를 가리키고 있다. 

9) git branch로 현재 브랜치 확인해보면 초록색 글씨로 master라고 표기되어있음 

10) git diff 어떤 내용이 추가되었는지 확인 

11) 다른 브랜치 생성해보기 위해서 git branch feature-login 

12) git branch 출력해보니 현재 feature-login, master이 있는데 head가 master을 가리키고 있기 때문에 master이 초록색으로 표시되어있음 

13) git checkout feature-login 으로 HEAD가 가르키는 브랜치를 feature-login으로 변경하기 

14) git branch로 확인해보니 feature-login으로 branch가 바뀌어있었고, master은 그냥 흰색으로 표시되어 있었음 

15) vi LoginService.java 로 편집 

16) git log로 확인 현재 HEAD는 feature-login을 가리키고 있음 

17) git add LoginService.java

18) git commit -m "Commit 3 on feature-login" feature-login 브랜치에 LoginService.java 커밋을 추가한 것이다. 

19) git checkout master 

20) git log로 HEAD -> master 인것을 확인 

21) ls 

22) vi MainService.java (master 브랜치에 추가하는것) 

23) git commit -m "Commit 4 on master branch"

24) git log로 HEAD -> master인것을 확인 

 

'Github' 카테고리의 다른 글

Git branch 그리고 Git Flow  (0) 2022.01.24
Github 잔디가 안심어진다면?  (0) 2021.12.12
repository 삭제하기  (0) 2021.08.07
깃허브 ) SSH키 등록  (0) 2021.06.18