일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- DirectX12
- TCP/IP
- Frustum Culling
- gitlab
- 직교 투영
- 네트워크 게임 프로그래밍
- 네트워크
- 게임 클래스
- Deferred Rendering
- Render Target
- direct3d
- 조명 처리
- 게임 프로그래밍
- Direct3D12
- 디퍼드 렌더링
- FrameResource
- light
- Dynamic Indexing
- DirectX
- C++
- gitscm
- 동적 색인화
- 입방체 매핑
- 절두체 컬링
- effective C++
- 노멀 맵핑
- InputManager
- 장치 초기화
- 게임 디자인 패턴
- 큐브 매핑
- Today
- Total
코승호딩의 메모장
[Git을 통한 형상 관리] 본문
이번 포스팅에서는 형상 관리 툴인 Git을 활용하여 결과적으로 C++과 OpenGL을 활용한 2D 게임 개발 프로젝트를 진행하며 코드를 Git을 통해 관리하는 방법을 기술하고자 합니다. 또한 GitHub가 아닌 GitLab을 사용하여 형상 관리를 하고자 합니다. 위 주제는 한국공학대학교 게임공학과 이택희 교수님 수업 게임 소프트웨어 공학에서의 내용을 기반으로 진행될 것입니다.
Git이란
- Git : 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하는 분산 버전 관리 시스템, 변화를 시간에 따라서 관리해 주는 형상 관리 시스템
Git의 기능은 무궁무진할 정도로 매우 많으며 Git만 알고 있어도 복잡한 어플리케이션을 만드는 데 있어서 형상 관리를 굉장히 빠르고 쉽게 할 수 있다. 만약 당신이 Git에 대해 알고 사용하고 있지만 사용하는 수준이 Clone, Pull, Push, Commit, Add 정도라면 모르는 상태에서 Git을 활용하고 있다고 해도 과언이 아니다. 많은 분들이 Git이 아닌 GitHub DeskTop이나 Fork와 같은 GUI를 먼저 접하기 때문에 Git에 대하여 잘 알지 못한 채 사용할 것이다. 협업 프로젝트에서 Git을 잘 다루지 못한다면 엄청난 고비를 겪을 것이다. 따라서 앞으로 GUI를 사용하지 않고 Git에 대하여 매우 자세하게 알아보고 자유롭게 사용할 수 있도록 배우고 익히자.
그렇다면 왜 Git을 사용해야 할까?
- 소프트웨어 개발 형상 관리
- 본인이 개발하였다는 증거
- 개발 진행 상황을 쉽게 파악
GitScm
Git이 가지고 있는 고유한 기능을 PC상에 설치하는 역할을 한다. GUI와는 전혀 관계가 없고 PC상에서 특정한 Command가 동작할 수 있도록 한다. 요약하여 Git의 기능을 설치하는 것이다. PC에 Git 관련된 어플리케이션이 설치되어 있어야 외부에서 서비스 해주는 업체들(GitLab, GitHub)이 자신의 PC와 연동이 된다. 모두 GitScm 기반으로 동작을 하기 때문에 GitScm을 설치해야 한다.
위 그림과 같이 GitScm 설치 완료 후 C드라이브에 폴더를 만들고 Open Git Bash here을 누르게 되면 오른쪽과 같은 창이 뜰 것이다. 이 창이 바로 Git Command를 입력할 수 있는 창이다. Git을 새로 설치하게 되면 시스템 상에 설치된다. GitHub나 GitLab에 가입되어 있다고 하더라도 GitScm 자체는 사용자의 정보를 모른다. 따라서 기본적인 정보는 입력을 해줘야 한다.
위 그림과 같이 자신의 이름과 이메일 정보를 시스템 상에 등록한다. 등록이 완료 되었다면 시스템 상에서 Git을 사용할 수 있는 준비가 완료된 것이다.
GitLab
앞서 말한 여러 업체들 중 하나인 GitLab을 사용할 것이다. 현재 자신의 Local PC에만 Git이 설치되어 있고 어디까지나 Local PC 안에서만 동작을 하는 Command Line Interface를 제공한다. 따라서 결국 모든 데이터가 자신의 Local PC 안에만 저장이 되어 있는 상태이다. 때문에 우리는 GitLab과 같은 호스팅 업체를 통해서 안전하게 웹 드라이브 같은 곳에 보관할 수 있는 다양한 기능을 제공받아야 한다. 이렇게 되면 Local PC가 망가지더라도 웹 드라이브에 저장되어 있는 데이터로 인해 복구가 가능할 것이다. 그러면 다음으로 GitLab에 가입하도록 하자.
앞으로 C++과 OpenGL 사용한 프로젝트를 기반으로 하나씩 실습을 진행해나가며 살을 붙여 가며 프로그래밍 하고 GitLab과 연동하여 사용하게 될 것이다.
'게임 소프트웨어' 카테고리의 다른 글
[Object 클래스] (0) | 2023.10.04 |
---|---|
[GitLab 연동] (0) | 2023.09.25 |
[Game 클래스] (0) | 2023.09.13 |
[소프트웨어 공학] (0) | 2023.09.13 |