[Git Collaborating Workflows / Git 협업 흐름] Gitflow Workflow

2017. 12. 1. 23:11Git

Gitflow Workflow


Gitflow Workflow는 nvie.com의 빈센트 드리센(Vincent Driessen)이 제안한 것이다.

Gitflow Workflow는 코드 릴리스를 중심으로 좀 더 엄격한 브랜칭 모델을 제시한다.

Feature Branch Workflow보다 복잡하긴하지만, 대형 프로젝트에도 적용할 수 있는 강건한 작업 절차다.


3.1. 작동원리


Gitflow Workflow도 팀 구성원간의 협업을 위한 창구로 중앙 저장소를 사용한다.

또 다른 워크플로우와 마찬가지로 로컬 브랜치에서 작업하고 중앙 저장소에 푸시한다.

단지 브랜치의 구조만 다를 뿐이다.




3.2. 이력을 기록하는 브랜치


master 브랜치 뿐만아니라, 이 워크플로우에서는 두 개의 다른 브랜치도 변경 이력을 유지하기 위해 사용한다.

master 브랜치는 릴리스 이력을 관리하기 위해 사용하고, develop 브랜치는 기능 개발을 위한 브랜치들을 병합하기 위해 사용한다.

그래서, master 브랜치는 릴리스 태그를 매기기에 아주 적합하다.

이 워크플로우의 모든 작업 절차들은 master 와 develop 두 개의 브랜치를 대상으로 한다.




3.3. 기능 브랜치


새로운 기능은 각각의 브랜치에서 개발하고 백업 및 협업을 위해서 중앙 저장소에 푸시한다.

그런데, master 브랜치에서 기능 개발을 위한 브랜치를 따는 것이 아니라, develop 브랜치에서 딴다.

그리고, 기능 개발이 끝나면 다시 develop 브랜치에 작업 내용을 병합한다.

바꾸어 말하면, 기능 개발을 위한 브랜치는 master 브랜치와는 어떤 상호 작용도 하지 않는다.

Feature Branch Workflow라면 develop 브랜치에 개발한 기능을 병합하는 것으로 모든 과정이 끝날테지만, Gitflow Workflow는 아직 할 일이 더 남아 있다.




3.4. 릴리즈 브랜치


develop 브랜치에 릴리스를 할 수 있는 수준만큼 기능이 모이면(또는 정해진 릴리스 일정이 되면), develop 브랜치를 기준으로 릴리스를 위한 브랜치를 딴다.

이 브랜치를 만드는 순간부터 릴리스 사이클이 시작되고, 버그 수정, 문서 추가 등 릴리스와 직접적으로 관련된 작업들을 제외하고는 이 브랜치에 새로운 기능을 추가 병합하지 않는다.

릴리스 준비가 완료되면 master 브랜치에 병합하고 버전 태그를 부여한다.

그리고, 릴리스를 준비하는 동안 develop 브랜치가 변경되었을 수 있으므로 develop 브랜치에도 병합한다.

릴리스를 위한 전용 브랜치를 사용함으로써 한 팀이 릴리스를 준비하는 동안 다른 팀은 다음 릴리스를 위한 기능 개발을 계속할 수 있다.

즉, 딱딱 끊어지는 개발 단계를 정의하기에 아주 좋다.

예를 들어, 이번 주에 버전 4.0 릴리스를 목표로한다라고 팀 구성원들과 쉽게 소통하고 합의할 수 있다는 말이다.

릴리스 브랜치는 release-* 또는  release/* 처럼 이름 짓는 것이 일반적인 관례다.




3.5. 유지 보수를 위한 브랜치


운영 환경에 릴리스한 후 발견된 긴급 패치는 ‘hotfix’ 브랜치를 이용한다.

‘hotfix’ 브랜치만 master 에서 바로 딸 수 있다.

패치가 준비되면 master 와 develop 브랜치 양쪽에 병합하고, 새로운 버전 이름으로 태그를 매겨야 한다.

버그 수정만을 위한 브랜치를 따로 만들었기때문에, 다음 릴리스를 위해 개발하던 작업 내용에 전혀 영향을 주지 않는다.

‘hotfix’ 브랜치는 master 브랜치를 부모로 하는 임시 브랜치라고 생각하면 된다.




3.6. 연습



develop 브랜치 생성

git develop branch

git push -u origin develop




develop에서 특정 기능 담당하는 feature브랜치 생성

git checkout -b plus develop




plus 브랜치와 같이 특정 기능 작업이 마무리되면 develop에 병합을 하면 된다.

git pull origin develop

git checkout develop

git merge plus

git push

git branch -d plus


기능 브랜치를 병합하기 전에 반드시 로컬 develop브랜치에 중앙 저장소의 변경 내용을 반영해서 최신 상태로 만들어야 한다.

master에 직접 병합하지 않도록 주의해야 한다.

병합할 때 충돌이 발생하면 Centralized Workflow에서 본 바와 같이 해결한다.





Release 브랜치

최종 테스트를 하거나, 문서를 수정하는 등 릴리스와 관련된 여러 가지 작업들을 처리하기 위한 격리 공간이다. 

Release 브랜치를 만든 이후에 develop 브랜치에 병합된 기능은 릴리스 대상에서 제외된다.

이번에 포함되지 않은 기능들은 다음 릴리스에 포함된다.

git checkout -b release-0.1 develop



릴리스 브랜치는 기능 개발(develop)과 프로젝트의 공식 릴리스 사이의 가교 역할을 한다.

master 브랜치에 병합할 때는 태그를 부여하는 것이 나중을 위해서 여러 모로 편리하다.

git tag -a 0.1 -m "Initial public release" master

git push --tags





master 브랜치를 기준으로 유지 보수 브랜치를 만들고, 버그를 수정하고 커밋한다.

버그 수정이 끝나면 master 브랜치에 바로 병합한다.

릴리스 브랜치와 마찬가지로, 유지 보수 브랜치에서의 변경 사항은 개발 중인 기능에도 반영되어야 하므로 develop 브랜치에도 병합해야 한다.

병합이 끝나면 유지 보수 브랜치는 삭제해도 좋다.




우아한 형제들 '배달의 민족' 안드로이드 모바일 파트 개발팀 또한 Gitflow workflow를 사용하고 있다고 한다.


terminal로 작업한 gitflow

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git branch develop

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin develop

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      develop -> develop

Branch develop set up to track remote branch develop from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b develop origin/develop

fatal: A branch named 'develop' already exists.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout develop

Switched to branch 'develop'

Your branch is up-to-date with 'origin/develop'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b plus develop

Switched to a new branch 'plus'

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch plus

nothing to commit, working tree clean

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add plus

fatal: pathspec 'plus' did not match any files

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit

On branch plus

nothing to commit, working tree clean

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add plus

fatal: pathspec 'plus' did not match any files

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add GitCollaboratingWorkflows

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Plus operation added"

[plus 6bad15e] Plus operation added

 1 file changed, 21 insertions(+)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin plus

Counting objects: 12, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (8/8), done.

Writing objects: 100% (12/12), 1.28 KiB | 0 bytes/s, done.

Total 12 (delta 3), reused 0 (delta 0)

remote: Resolving deltas: 100% (3/3), completed with 3 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      plus -> plus

Branch plus set up to track remote branch plus from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b minus develop

Switched to a new branch 'minus'

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add GitCollaboratingWorkflows

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Minus operation added"

[minus d000bf7] Minus operation added

 1 file changed, 53 insertions(+)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin minus

Counting objects: 12, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (8/8), done.

Writing objects: 100% (12/12), 1.37 KiB | 0 bytes/s, done.

Total 12 (delta 3), reused 0 (delta 0)

remote: Resolving deltas: 100% (3/3), completed with 3 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      minus -> minus

Branch minus set up to track remote branch minus from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b multiply develop

Switched to a new branch 'multiply'

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add GitCollaboratingWorkflows

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Multiply operation added"

[multiply a9250ff] Multiply operation added

 1 file changed, 54 insertions(+), 1 deletion(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin multiply

Counting objects: 12, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (8/8), done.

Writing objects: 100% (12/12), 1.37 KiB | 0 bytes/s, done.

Total 12 (delta 3), reused 0 (delta 0)

remote: Resolving deltas: 100% (3/3), completed with 3 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      multiply -> multiply

Branch multiply set up to track remote branch multiply from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch multiply

Your branch is up-to-date with 'origin/multiply'.

nothing to commit, working tree clean

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout develop

Already on 'develop'

Your branch is up-to-date with 'origin/develop'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge plus

Updating 3c7b8fa..6bad15e

Fast-forward

 .../src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java   | 21 +++++++++++++++++++++

 1 file changed, 21 insertions(+)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch develop

Your branch is ahead of 'origin/develop' by 1 commit.

  (use "git push" to publish your local commits)

nothing to commit, working tree clean

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   3c7b8fa..6bad15e  develop -> develop

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin develop

Branch develop set up to track remote branch develop from origin.

Everything up-to-date

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b release-0.1 develop

Switched to a new branch 'release-0.1'

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch release-0.1

nothing to commit, working tree clean

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add GitCollaboratingWorkflows

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Project for release version 0.1"

[release-0.1 7589d05] Project for release version 0.1

 1 file changed, 3 insertions(+)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin release-0.1

Counting objects: 12, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (8/8), done.

Writing objects: 100% (12/12), 997 bytes | 0 bytes/s, done.

Total 12 (delta 4), reused 0 (delta 0)

remote: Resolving deltas: 100% (4/4), completed with 4 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      release-0.1 -> release-0.1

Branch release-0.1 set up to track remote branch release-0.1 from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout master

Switched to branch 'master'

Your branch is up-to-date with 'origin/master'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge release-0.1

Updating 3c7b8fa..7589d05

Fast-forward

 .../main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java    | 24 ++++++++++++++++++++++++

 1 file changed, 24 insertions(+)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   3c7b8fa..7589d05  master -> master

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout develop

Switched to branch 'develop'

Your branch is up-to-date with 'origin/develop'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge release-0.1

Updating 6bad15e..7589d05

Fast-forward

 .../app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java                  | 3 +++

 1 file changed, 3 insertions(+)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   6bad15e..7589d05  develop -> develop

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git branch -d release-0.1

Deleted branch release-0.1 (was 7589d05).

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$  git tag -a 0.1 -m "Initial public release" master

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push --tags

Counting objects: 1, done.

Writing objects: 100% (1/1), 171 bytes | 0 bytes/s, done.

Total 1 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new tag]         0.1 -> 0.1

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge minus

Auto-merging GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java

CONFLICT (content): Merge conflict in GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java

Automatic merge failed; fix conflicts and then commit the result.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch develop

Your branch is up-to-date with 'origin/develop'.

You have unmerged paths.

  (fix conflicts and run "git commit")

  (use "git merge --abort" to abort the merge)


Unmerged paths:

  (use "git add <file>..." to mark resolution)


both modified:   GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java


no changes added to commit (use "git add" and/or "git commit -a")

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch develop

Your branch is up-to-date with 'origin/develop'.

You have unmerged paths.

  (fix conflicts and run "git commit")

  (use "git merge --abort" to abort the merge)


Unmerged paths:

  (use "git add <file>..." to mark resolution)


both modified:   GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java


no changes added to commit (use "git add" and/or "git commit -a")

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Merged minus into develop. Plus operation and minus operation is organized"

U GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java

error: Committing is not possible because you have unmerged files.

hint: Fix them up in the work tree, and then use 'git add/rm <file>'

hint: as appropriate to mark resolution and make a commit.

fatal: Exiting because of an unresolved conflict.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git status

On branch develop

Your branch is ahead of 'origin/develop' by 2 commits.

  (use "git push" to publish your local commits)

nothing to commit, working tree clean

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge multiply

Auto-merging GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java

CONFLICT (content): Merge conflict in GitCollaboratingWorkflows/app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java

Automatic merge failed; fix conflicts and then commit the result.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin develop

Counting objects: 24, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (16/16), done.

Writing objects: 100% (24/24), 2.13 KiB | 0 bytes/s, done.

Total 24 (delta 8), reused 0 (delta 0)

remote: Resolving deltas: 100% (8/8), completed with 4 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   7589d05..b3ad2ee  develop -> develop

Branch develop set up to track remote branch develop from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b release-0.2 develop

Switched to a new branch 'release-0.2'

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add GitCollaboratingWorkflows

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Project release version 0.2 is organized. Plus, minus, multiply operation method is added"

[release-0.2 f7b2f56] Project release version 0.2 is organized. Plus, minus, multiply operation method is added

 1 file changed, 3 insertions(+), 1 deletion(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin release-0.2

Counting objects: 12, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (8/8), done.

Writing objects: 100% (12/12), 956 bytes | 0 bytes/s, done.

Total 12 (delta 4), reused 0 (delta 0)

remote: Resolving deltas: 100% (4/4), completed with 4 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      release-0.2 -> release-0.2

Branch release-0.2 set up to track remote branch release-0.2 from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout master

Switched to branch 'master'

Your branch is up-to-date with 'origin/master'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge release-0.2

Updating 7589d05..f7b2f56

Fast-forward

 .../com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java   | 43 +++++++++++++++++++++++++++++++++--

 1 file changed, 41 insertions(+), 2 deletions(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   7589d05..f7b2f56  master -> master

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout develop

Switched to branch 'develop'

Your branch is up-to-date with 'origin/develop'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge release-0.2

Updating b3ad2ee..f7b2f56

Fast-forward

 .../app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java                 | 4 +++-

 1 file changed, 3 insertions(+), 1 deletion(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   b3ad2ee..f7b2f56  develop -> develop

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git branch -d release-0.2

Deleted branch release-0.2 (was f7b2f56).

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git tag -a 0.2 -m "Second public release" master

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push --tags

Counting objects: 1, done.

Writing objects: 100% (1/1), 171 bytes | 0 bytes/s, done.

Total 1 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new tag]         0.2 -> 0.2

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout -b issue-#001 master

Switched to a new branch 'issue-#001'

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git add GitCollaboratingWorkflows

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git commit -m"Fixed the plus operation bug"

[issue-#001 4f02706] Fixed the plus operation bug

 1 file changed, 9 insertions(+), 6 deletions(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push -u origin issue-#001

Counting objects: 12, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (8/8), done.

Writing objects: 100% (12/12), 965 bytes | 0 bytes/s, done.

Total 12 (delta 4), reused 0 (delta 0)

remote: Resolving deltas: 100% (4/4), completed with 4 local objects.

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

 * [new branch]      issue-#001 -> issue-#001

Branch issue-#001 set up to track remote branch issue-#001 from origin.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout master

Switched to branch 'master'

Your branch is up-to-date with 'origin/master'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge issue-#001

Updating f7b2f56..4f02706

Fast-forward

 .../app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java     | 15 +++++++++------

 1 file changed, 9 insertions(+), 6 deletions(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   f7b2f56..4f02706  master -> master

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git checkout develop

Switched to branch 'develop'

Your branch is up-to-date with 'origin/develop'.

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git merge issue-#001

Updating f7b2f56..4f02706

Fast-forward

 .../app/src/main/java/com/example/jaehyukshin/gitcollaboratingworkflows/MainActivity.java     | 15 +++++++++------

 1 file changed, 9 insertions(+), 6 deletions(-)

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git push

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/ninetyfivejae/GitCollaboratingWorkflows.git

   f7b2f56..4f02706  develop -> develop

sinjaehyeog-ui-MacBook-Pro:GitCollaboratingWorkflows jaehyukshin$ git branch -d issue-#001

Deleted branch issue-#001 (was 4f02706).



# 참고 사이트)


https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow


http://blog.appkr.kr/learn-n-think/comparing-workflows/