Git Study
세번째 시간
Hot Topic
월요일 - M$가 Github인수!
gitlab이 대폭 할인
Git flow
일반적으로 많이 사용하는 브랜치 관리 방법
develop : 개발중인 프로그램의 소스를 총 관리하는 브랜치
feature : 프로그램의 기능 단위로 나누어 개발하는 브랜치
release : 출시 직전의 소스를 관리하는 브랜치 (베타 버전)
hotfix : 출시 이후에 발생한 버그를 급히 수정하여 Master에 바로 반영해야 하는
경우 사용하는 브랜치
master : 상용화 되는(혹은 출시하는) 버전의 소스를 관리하는 브랜치
실습 : 로또 번호 추첨기 개발
master
rangeBug
develop
checkLogic1
v1.0
checkLogic2
v1.0 v1.1
hotfix
release
feature
(짝코딩!) 팀을 만들어주세요
Foo & Bar
새로운 저장소를 만들고 초기화
(Foo)
기본 html 코드를 만들고 index.html로 저장
(Foo)
add & commit & branch develop
(Foo)
깃허브에 새 저장소를 생성합니다.
(Foo)
모든 브랜치를 한번에 업로드 - git push --all
git push add [원격저장소명] -all
(Foo)
사이트에서 확인
(Foo)
내 Github Repo 공유하기
Collaboration
(Foo)
세팅 페이지로 이동
(Foo)
콜라보!
(Foo)
짝궁 아이디를 검색해서 추가합니다.
(Bar)
(Bar)
(Bar)
(Foo)
(일거리 던지기..)
협업 해보기
간단하게 할일을 만들어 Bar에게 전달합니다
(Foo)
(Foo)
(Bar)
(Bar)
(Bar)
확인!
(Foo)
feature 브랜치를 사용해 봅시다!
(Foo)
할일을 나눕니다!수정
코드
(Foo)
git remote update
(Bar)
수정
코드
(Bar)
(Bar)
(Foo)
(Foo)
수정
코드
(Foo)
[tip] 브랜치 그래프
Source Tree 없이도
github의 insights > Network 페이지에서 확인가능
(push가 된 브랜치라면)
(Foo)
(Foo)
(Foo)
반대로 (Bar) merge!
(Bar)
(Bar)
(Bar)
(Bar)
OOPS!
(Bar)
(두 함수 모두 사용) <<<<<<< HEAD , ======= , >>>>>>> feature/checkLogic2를 삭제
(Bar)
(새로고침 하면서 확인해보자?!)
(Bar)
(Bar)
(Foo)
(Foo)
(역시 새로고침 하면서 확인?!)
출시 준비를 하자!
(이만하면 됬다...)
Release Branch
(Foo)
(Foo)
(Foo)
(Bar)
(Bar)
(Bar)
(Bar)
(Bar)
(Foo)
(Foo)
release -> master
드디어 출시 버전 관리
(Foo)
(Foo)
develop 브랜치에도 반영하는 것을 잇지 말자!
Tag를 활용하자!
커밋에 이름을 정하는 tag
github에서 지원하는 중요한 역할 때문에 출시한 버전 이름으로 태그를 사용합니다.
추가 : git tag -a [태그명]
삭제 : git tag -d [태그명]
목록 : git tag
업로드 : git push [원격저장소] [태그명]
(주 : 태그도 push 하기 전에는 로컬에서 혼자만 볼 수 있다.)
(Foo)
버그 발견!
OMG!!
(Bar)
재빨리 수정!!
(Bar)
(Bar)
develop 브랜치에도 반영하는 것을 잇지 말자!
(Bar)
(Bar)
master
rangeBug
develop
checkLogic1
v1.0
checkLogic2
v1.0 v1.1???
git-flow cheatsheet

Git 코드랩 스터디 3