Git?
- 오늘 Git관련 사용 특강이 있었다. Github를 통해 조금은 사용하고 있었는데 겉핥기 식으로만 알고 있었던지라 이번 기회에 제대로 알수 있었떤 시간이었다.
- 아무래도 게임개발을 하다보면 지속적으로 기능을 개발해야하고 추가해야 하는데 1인개발이 아닌이상 다른 개발자들과 협업을 하는 일이 많다. 이러한 작업물의 공유를 쉽게 할 수 있게 하는것이 Git이다.
- Git은 VCS즉 Version Control System이다. 게임 개발과정에서 많은 기능을 추가하다보면 오류가 생길 수 도 있고 문제가 생길 수도 있는데 어느 단계에서 문제가 발생했는지를 파악할 수 있는게 Version의 관리가 필요해 Git을 통해 관리한다.
- 일반적인 Git은 사용난이도가 조금 있는편이라 보통은 Github를 통해 사용하는것이 조금 더 편하다고 한다.
push? pull? merge?
- push : 깃에 데이터를 올리는것
- pull : 깃에서 데이터를 받아오는것
- merge : 다른 레포지터리와 합치는것
말그대로 영어 그대로 의미라 크게 어렵지 않았던 부분이다.
깃을 사용할때 주의점?
- 지난 프로젝트를 할 때에도 느꼇지만 merge 하는 과정에서 충돌이 빈번하게 일어난다. 이 부분에서 작업시 요령이 필요하다.
- 역할분담을 확실하게 하는것이 중요하다. 대부분의 충돌은 같은 스크립트를 수정하면서 일어나는경우가 많다보니 작업을 잘 분담해야하는데 혹시나 같은 스크립트를 수정할경우 의사소통을 통해 스크립트 정리를 잘 해놓아야한다.
- 유니티의 경우 scene을 분리해서 작업하는것이 좋다. 지난번에도 느꼇던 부분이 이거다. 만약 동일 신 작업시 scene복사후 따로 진행후 합치는것이 충돌을 방지 할 수 있다.
- 항상 merge든 어떤 처리를 할때마다 잘 얘기하고 할 필요가있는것같다.
오늘의 회고
- 오늘은 깃을 왜 쓰는지 깃의 원리에 대해서 배우고 협업의 필수인 깃을 배울수 있었다. 몰랐던 부분을 잘 정리할 수 있어서 좋은 시간이 되었다.
- 팀프로젝트 코드를 깃허브를 통해 정리하면서 오늘 배웠던 깃사용법을 떠올리며 다음 프로젝트에선 좀 더 잘 할 수 있을것 같다고 생각이들었다.
- 팀프로젝트를 얼추 구현해야할 것들을 다 구현했다. 간단한 프로젝트였지만 팀원들이 성실하고 다 좋은 분들이셔서 미니 프로젝트긴 해도 재미있고 알찬 시간이었다. 내일은 만든 게임 영상촬영하고 최종 코드 정리를 해 볼 예정이다.