팀프로젝트를 하며 Git 문제를 어떻게 해결 해야할 것인지

2019. 2. 22. 21:38GIT

언어교환 사이트 팀프로젝트를 하기까지 

얼마 전 한국어를 공부하는 친구가 언어교환 사이트에 대해 불만을 토로 했었다. Hello talk, Tandem 등등 사용하려는데 불편하며, 사용하려 하니 광고창에, 조금 사용하려면 유료에, 가장 중요한 것은 언어 공부를 할 수 있는 환경이 아니라더라.

 사실 언어를 공부하는 것에 관심이 많았었고, 온라인은 아니지만 오프라인으로 이미 여러번 언어교환 경험이 있었기 때문에 언어교환 사이트에 관심이 많아졌다. 

 결론적으로 언어교환사이트를 사용해본 결과 아무런 주제 없이 사람들과 대화를 하다 보니 아무런 진전 없이 20명과의 대화가 반복 되었다. 

 


팀프로젝트 시작

그렇게 나는 언어교환사이트를 만들기로 결심 했으며, 코드스쿼드에서 같이 공부하는 친구 두명 뽀에버와 라임을 꼬셔서 사이트를 만들기 시작했다.

 그렇게 프로젝트를 시작하자마자 팀원들과 논쟁이 벌어졌다. 사이트의 구성부터 시작하여, 사이트의 중점을 어디에 두어야 할지, 채팅 사이트를 만드는데 화상통화가 왜 필요한지에 대해 설명하며 아무튼 팀원들의 생각이 다들 너무 달랐었다. 

 하지만 대화를 3시간 정도 했을 때, 어느 정도 사이트의 그림이 그려졌고, 사이트를 만들기 시작하려면서 Git을 어떻게 처리 할 것인지에 대해 생각할 때가 되었다.


Git 문제들을 어떻게 처리 할 것인가?

 우선 Master 브랜치에는 우리가 서버에 올릴 때 사용하기로 했고, Develop 브랜치는 우리가 개발 할때에 사용하는 브랜치로 만들었다. 

Develop 브랜치에는 feature 를 각자 만들었다. 그렇게 develop브랜치에서 각자의 feature 브랜치를 만들어서 자신들의 기능을 만들고 develop 브랜치의 정보를 먼저 pull 한다음 feature 브랜치와 merge하는 방식으로 했다.


충돌 문제

 간단히 이야기해서 처음 우리는 gitignore의 존재에 대해 생각하지 못했었다. 팀원들간 많은 부분의 버전이 틀렸기 때문에 정말 생각보다 많은 곳에서 충돌이 발생했었다. 충돌을 하나하나 고치다 보니 비생산적이여서 찾아 보다가 gitignore를 찾게 되었고, 수정할 필요가 없는 파일들을 gitignore에 지정해서 충돌 부분을 많이 없앨수 있었다.


작은 시작

이제 시작 하는 단계이기도 하고, 아직 git을 사용하며 많은 어려움이 없기 때문에 우선은 이렇게 진행하고 있다. 얼마 전 git flow를 보게 되었는데, git flow tool에 대해서도 공부하고 사용해볼 예정이다. 우선은 공부할 것이 너무 많기에... 일단은 우리의 프로젝트를 어서 시작하고 싶다.