Hyemi Lee

Hyemi Lee

주니어 개발자의 삽질과 기록

만개의 레시피 클론 코딩, git flow

문제1. git으로 협업하기

  • git으로 협업을 해본 경험이 없어 내가 작성한 코드를 어떻게 로컬 저장소에 올리는지 전체적인 부분에 대해 팀원에게 질문했다.
  1. 세팅이 다된 remote develop 브랜치에 create branch here해서 local 브랜치를 만들고
  2. 그 환경에서 mustache로 화면을 만들었습니다
  3. GitKraken 맨 오른쪽에 stage all changes, commit message, commit 하면 되는건가요?

해결1.

git flow 를사용하세요

문제2.

git-flow init 후 Fatal: Working tree contains unstaged changes. Aborting 발생

해결2.

  • git flow는 변경된 파일이 없는 상태에서 초기화 해줘야한다.
  1. git stash
    • 변경된 기능은 임시 저장한다.
  2. git flow init
    • 초기화
  3. git flow feature start chef
    • 특정 기능을 개발하기 위한 branch가 필요하므로 feature를 추가하고 내가 개발할 쉐프 목록을 chef라고 이름을 지어줬다.
  4. git stash pop
    • 임시 저장한 내용 불러온다
git stash
git flow init
git flow feature start chef
git stash pop

그렇다면 git flow란 무엇인가?

  • feature - develpo - release - hotfixes - master 단계로 branch를 나눠서 코드를 관리하는 전략
  • 이를 사용자가 쉽게 접근하고 사용할수 있도록 확장 기능(명령어)를 제공하는 것이 gitflow다.

방식

  • 기존 git 저장소 내에서 초기화하는 것으로 git-flow의 사용을 시작할 수 있다.
  • 명령어를 실행하고 나면 자동으로 master 외에 develop branch가 생성되며, 기본적으로 develop branch에서 개발하고, master로 release 하는 방식이다.
  • git flow init
    • 해당 명령어를 실행하면 프로세스 별로 사용할 branch이름을 입력하라는 메시지가 뜬다. (-d 옵션시, 이 과정 생략)

branch 종류

  1. master : 최종 릴리즈에 사용되는 안정된 버전
  2. develop : 다음 릴리즈를 위해 개발중인 최신 버전
  3. feature : 특정 기능 개발을 위한 branch
  4. release : 릴리즈 점검을 위한 branch
  5. hotfix : 긴급 버그 픽스를 위한 branch
  6. support : 버전 호환성 문제를 처리하기 위한 branch

결과 화면

  • 깃 크라켄 화면 git flow

  • 첫번째 PR git flow2

느낀점

그동안 git은 백업용으로 사용했었는다. 처음으로 협업을 위해 사용했는데 쉽지 않았고, 잘 사용하면 굉장히 유용할것같다. 하지만 ‘잘’ 사용하기 위해 계속 공부하고 테스트용 저장소를 이용해서 많이 테스트 해봐야겠다. 그리고 잘한건지 모르겠는데.... 처음으로 PR올리니까 신기하고 재밌다 크크


참고

참고1 git flow 설명화면

Tags:

Categories:

Updated:

Share on

Twitter Facebook LinkedIn

You may also enjoy

Redis Stream

2021年04月28日

Stream Stream은 로그 데이터를 처리하게위해 5.0에서 새로 도입된 데이터 타입입니다. 대량의 데이터가 연속적으로 발생할때 처리하기 위해 등장했습니다. 기존 데이터를 수정하지 않고 오직 추가로 발생합니다. 이런 종류의 데이터를 stream or log데이터...

Study, Object, chapter2&3 presentation

2021年04月20日

chapter03. 역할, 책임, 협력 객체지향 설계란, 올바른 객체에게 올바른 책임을 할당하면서 낮은 결합도와 높은 응집도를 가진 구조를 창조하는 활동이다.

Spring, chatting 프로그램 만들기, Reactive란?

2020年06月16日

Reactive 막힘없이 흘러다니는 data(event)를 통해 사용자에게 자연스러운 응답을 주고 규모 탄력적으로 리소스를 사용하며 실패에 있어서 유연하게 대처한다 모든 지점에서 블럭 되지 않게 하자 oop와 같은 패러다임 모든 것을 비동기적인 data의 strea...