1. Git이란?
- Git은 **버전 관리 시스템(VCS, Version Control System)**이다.
- 파일이나 소스코드의 변경 이력을 커밋 단위로 관리할 수 있으며, 개발 중인 프로젝트의 과거 상태로 되돌릴 수 있는 기능을 제공한다.
- 특히 협업 상황에서 다음과 같은 이유로 필수적이다:
- 팀원 간의 변경 사항을 명확하게 추적 및 병합 가능
- 기능별 브랜치를 만들어 동시다발적인 개발 작업 분리 가능
- 누가, 언제, 어떤 이유로 어떤 파일을 수정했는지 기록됨
2. Git 설치 및 도움말
- 공식 홈페이지에서 Git 설치 가능
- 설치 후 명령어 확인은 아래와 같이 가능:
git --help
→ 기본 명령어와 사용법 확인 가능
3. Git vs GitHub 차이
- Git: 로컬에서 버전 관리를 위한 도구 (코드 상태 저장소)
- GitHub: Git으로 관리한 버전을 온라인 상에서 공유, 협업할 수 있게 해주는 플랫폼
- 둘은 별개의 개념이지만, 함께 사용할 때 강력한 협업 툴이 됨
4. GitHub 기능 요약
✅ Repository (저장소)
- 프로젝트 단위의 저장공간. 코드, 커밋 이력, 브랜치 등을 관리함
- 생성 시 Public(공개) / Private(비공개) 옵션 선택 가능
- 일반적으로 저작권, 금전, 사업 아이디어와 관련된 프로젝트는 Private 설정
✅ Add .gitignore
- Unity 프로젝트처럼 자동 생성되는 대용량 폴더(Library, Temp 등)는 .gitignore에 명시
- .gitignore는 업로드에서 제외할 파일/폴더를 지정해주는 장치
- GitHub 생성 시 자동 설정 가능
✅ GitHub Desktop
- CLI를 어려워하는 초보자에게 유용
- Git의 대부분의 기능을 GUI 기반으로 클릭 & 드래그로 수행 가능
- 협업 중 변경 사항 비교, 브랜치 관리 등을 쉽게 수행
5. CI/CD 개념 이해
- CI (Continuous Integration): 코드를 자주 통합하고 자동 테스트하는 프로세스
- CD (Continuous Delivery/Deployment): 코드를 자동으로 배포하는 프로세스
- Git 커밋 메시지에 feat, fix, chore 등의 태그를 사용하면, 이를 인식하여 자동으로 버전을 올려주는 스크립트를 구성할 수 있음 (회사마다 설정 다름)
- 대표 도구: GitHub Actions, Jenkins, GitLab CI 등
6. Commit Convention
- 커밋 메시지 규칙을 의미
- 일관된 메시지는 프로젝트 관리와 자동화에 도움이 됨
- 기본 규칙은 다음과 같음:
- feat: 기능 추가
- fix: 버그 수정
- docs: 문서 수정
- refactor: 리팩토링 (기능 변경 없음)
- test: 테스트 코드 관련
- chore: 그 외 설정, 빌드, 환경파일 수정 등
✨ 구글에 "Conventional Commits"를 검색하면 더 많은 예시를 확인할 수 있음
7. GitHub 용량 제한
- GitHub의 무료 저장소 기준
- 단일 파일: 최대 2GB 제한
- 리포 전체 용량: 약 5GB까지 안정적, 그 이상은 Git LFS 필요
- 영상, 대용량 리소스는 클라우드 외부 업로드 권장
8. 실습 활동: 니케 카드 뒤집기 게임 개발(한 주 동안 개발할것)
- 팀원과 함께 Unity 2D 프로젝트로 카드 뒤집기 게임을 제작
- 이때 GitHub를 적극적으로 활용하여:
- Git으로 프로젝트 버전 관리
- 기능별 브랜치 생성 및 병합
- pull/push를 통해 동기화 연습
- 협업 기반 게임 개발 실습을 통해 실제 개발환경을 체험
'팀스파르타 내일배움캠프' 카테고리의 다른 글
| [스파르타 유니티_10기 3일차] 유니티 실습과 깃! 학습 (0) | 2025.04.09 |
|---|---|
| [스파르타 유니티_10기 2일차] 개인 복습 일지: 고양이 밥주기 & 카드 뒤집기 (2025.04.08) (1) | 2025.04.08 |
| [사전캠프 15일차] C# 기본 문법 및 개발 환경 이해 (2025.04.04) (2) | 2025.04.04 |
| [사전캠프 14일차] 행맨 & 숫자 야구 게임 구현 (2025.04.03) (0) | 2025.04.03 |
| [사전캠프 14일차] 숫자야구 만들기!!! (0) | 2025.04.03 |