__file__
148
2019-04-16 21:10:35
3
462

git branch 협업 관련 질문!


요즈음에 git을 배우고 있습니다.

옛날에 git을 쓰면서 팀원들간 협업하기 위해

로직을 분담해서 만든 다음, 다시 병합해서 하나의 소스코드를 만드려고 했으나

필요한 변수라던가 함수 네이밍등에서 맞아 떨어지지 않았던 이유로 충돌이 너무 많이 일어나

실패했던 경험이 있습니다..

이와 관련하여 필드에서 git을 이용해 협업하시는분들께, 어떤 방식으로 이러한 문제들이 일어나지 않게 협업하시는지 묻고싶습니다!

감사합니다 (_ _) :)

0
0
  • 답변 3

  • KDH0110
    153
    2019-04-16 21:34:41

    변수명 함수명에 관한것은 git을 쓴다고 해결되는 문제가 아닌 기초 설계과정에서 잡고 넘어가야하는 문제 아닌가요?


    0
  • IvoryCirrus
    126
    2019-04-16 21:39:34

    필요한 변수라던가 함수 네이밍등에서 맞아 떨어지지 않았던 이유로 충돌이 너무 많이 일어나 실패

    → Git을 쓰기때문에 일어나는 문제가 아니라, 설계단계에서의 논의 부족으로 발생하는 문제로 보입니다.


    고려 사항을 몇가지 적어보니 도움이 되셧으면 좋겟습니다.


    1. 공통적으로 사용하는 변수나 함수명에서의 충돌

    → 먼저 기능정의를 하시고 'E-R 다이어그램'을 그려서 필요한 데이터 및 기능을 정의하시고

    → 설계단계에서 '클래스 다이어그램'을 그려서 클래스변수 및 메소드설계를 완료하세요

    → 이후 설계한 내역을 기반으로 개발을 진행하시면 됩니다.


    2. 네이밍 등이 맞지 않는 문제

    → 설계단계에서 '용어사전' 및 '표준 코딩가이드'를 정하고 코드리뷰를 수행하세요

    → 용어사전을 통해 유사한 의미의 용어를 하나로 통일되게 사용할 수 있도록 하시고

    → 코드리뷰를 진행해 팀내 누구라도 이해할 수 있는 코드를 작성 하도록 노력하세요.


    0
  • 88_Rafael
    76
    2019-04-16 22:08:52

    충돌은 git 과 같은 분산버전관리 시스템에선 필수적인 요소...죠...? 자신이 없네요 ㅋㅋㅋㅋ

    저도 필드에 있는건 아니지만 경험을 되돌아 보면,

    크게 개발 환경 / 개인 역량 으로 나눠서 생각해 볼 수 있을 것 같습니다.

    1. git flow 전략 - 참조 : 우아한 형제들 기술 블로그l

    2. gitattribute - eol 등 여러 환경들을 세팅 가능합니다. 

    3. 쓰는게 가능하다면 Lint 도구 -

      eslint 처럼  공통된 코딩스타일을 갖는 것도 좋다고 생각합니다.

    4. 협업 툴 - Jira, Redmine 

    5. 충돌 해결 능력 - diff, merge 하는 툴에 대한 이해와 숙달 

    1
  • 로그인을 하시면 답변을 등록할 수 있습니다.