GitFlow를 중지하고 정식 발매가 수월해지면
배경
서버 측에서 개발한 프로젝트에서 GitFlow(의) 운용을 진행했지만 정식으로 발표할 때 어려움을 겪었기 때문에git의 운용 절차를 바꾸어 없앴다.
먼저 문제의 내용부터 순서대로 쓰기 때문에 결론(새로운 운용 규칙)만 알고 싶은 사람여기
git 운용 절차에 대해 GitFlow, GitHub Flow, GitLab Flow 등이 유명하지만 둘 다 좀 다르다고 생각해서 정리했습니다.
<2018/06/10 추기>
나는 본래 새로운 절차에도 이름이 있기를 바랐지만, 같은 방법을'Git Feature Flow'라고 부르는 문장을 발견했다.개인적으로도 잘 어울릴 것 같아서 앞으로 이 호칭을 쓰고 싶어요.
cf. GitFlow를 사용하지 않습니다!간단한 "GitFeature Flow"
추가 기록 끝
배포 프로젝트 개요
나는 반드시 채택해야 할 운용 규칙도 프로젝트의 조건에 달려 있다고 생각하기 때문에 이 규칙을 도입한 프로젝트에 대해 조금 쓰자.
원래 운영 프로세스
분기 모델
GitFlow라고 쓰면서 공식적인 절차가 아니라 GitFlow에서 릴리스 지점의 운용을 생략했다.
모든 동작 검증이 OK인 단계에서 개발자를 마스터에 통합하여 발표합니다.
다른 기능 검증이 없으면 발표할 수 없어서 곤란합니다.
상술한 절차 중 곤란한 모델.
이전과 같은 절차지만 피처/2를 먼저 검증하는 방법이 OK일 때 바로 발표되려면 곤란하다.
검증은 NG이기 때문에 수정이 필요한 피처/1의commit도 함께 발표됩니다.
당장 피처/1을 수정하고 검증하면 되지 않겠느냐고 생각할 수도 있지만, 프로젝트의 여러 가지 이유로 간단하게 완성할 수 없을 때가 있다.
(예를 들어 검증 후 규격을 변경해야 하거나 3일 후 담당자가 다음 작업을 할 수 있다. 수정이 빨리 끝나도 사내 검증 단계에서 최종 검사를 받아야 하는 위인은 잡히기 어렵다.)
feature/2는 이미 검증을 마쳤지만 평상시 절차에서 즉시 발표할 수 없습니다.피처/1의 수정과 검증이 끝날 때까지 기다리거나cherry-pick의 일부분만 제출하는 등 대응해야 합니다.
두 가지가 있다면 괜찮지만 개발자 수가 늘어나 각자 기능 개발을 하게 되면 발표 시기를 조정하는 것이 상당히 번거로워진다.
내부 검증용 서버가 한 대밖에 없기 때문에 동작 검증 후 정식 생산 절차에 따라 GitHub Flow와 GitLab flow도 같은 문제가 발생할 수 있다.
새 운영 프로세스
분기 모델
이 절차에 사용되는 지점도 세 가지가 있다.
GitFlow가 말하는 hotfix 브랜치 가까이.이렇게 되면 모든 기능이 발표될 수 있다.
이점
결점
느끼다
참고 자료
Introducing GitFlow
https://datasift.github.io/gitflow/IntroducingGitFlow.html
GitHub Flow (Japanese translation)
https://gist.github.com/Gab-km/3705015
GitLab flow에서 학습한 워크플로우 실습
https://postd.cc/gitlab-flow/
Gitlab flow가 어플리케이션 개발에 적합하다고 생각합니다.
http://shoma2da.hatenablog.com/entry/2015/11/04/233534
Gitgraph.js
http://gitgraphjs.com
GitFlow를 사용하지 않습니다!간단한'Git Feature Flow'- Gulunabi를 더 좋게 만드는 엔지니어 블로그.
http://developers.gnavi.co.jp/entry/GitFeatureFlow/koyama
Reference
이 문제에 관하여(GitFlow를 중지하고 정식 발매가 수월해지면), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/koyopro/items/b4569285efc22c6397c6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)