Skip to content

GIT Standard Workflow (Korean)

Won-Wook Hong edited this page Jan 25, 2014 · 1 revision

1. Clone을 받는다

$ git clone https://[email protected]/wafflestudio/wall.git # HTTPS 사용할때.

2. 새로 토픽을 시작하기 위해 로컬 브랜치를 만든다

$ git checkout -b eventarch origin/master
$ # git branch eventarch origin/master; git checkout eventarch 와 동일

origin/master이외의 브랜치(예: sharedexperimental)로부터 작업하려면:

$ git checkout -b experimental origin/sharedexperimental

3. 작업한다

$ vim app/assets/javascripts/event.coffee

4. Staging area에 add한다

$ git add app/assets/javascripts/event.coffee

5. status를 확인하고 commit한다

$ git status # 상태 확인, 어떤 파일이 커밋될지.
$ git commit
$ git log # 커밋 로그 확인

6. origin에 푸시할만한 시점이 되었다 싶었으면 싱크(pull or fetch+rebase)하고 푸시한다

$ git fetch && git rebase -i FETCH_HEAD
$ git push

새로운 원격 브랜치 사용하기 (임시 작업을 공유하거나 혼자 작업을 여러곳에서 하고 싶을 때)

1. 현재 HEAD를 remote branch에 발행하여 생성/업데이트

$ git push origin HEAD:<new branch>

2. remote branch 사용하기

$ git fetch     # 원격 저장소와 먼저 싱크 (recommended)
$ git checkout -b <localname> origin/<remote branch>  # remote 브랜치를 부모로 하는 local 브랜치를 만들고 이동

3. 브랜치 master와 합치기

$ git rebase -i master  # 내 브랜치와 master를 먼저 싱크
$ git checkout master   # master로 이동
$ git merge <branch>    # master에 내 변경사항 적용

4. 모든 브랜치상의 작업이 끝났으면 로컬 브랜치 삭제

$ git checkout master
$ git branch -d <branch>

5. 필요없는 remote 브랜치 삭제

$ git push origin :<branch>