와이어 프레임 제작 및 Git hub 특강
Chapter .1 와이어 프레임 제작하기

제작에 앞서 미리 와이어 프레임을 제작했어야 했지만
첫 프로젝트이다 보니 제작 과정 도중에 와이어 프레임을 제작하기 시작
아직 미구현된 방법들의 경우 이미지 편집하여 내용을 작성하였고
이미 제작이 완성된 기능들도 있어 해당 내용을 기재하여 와이어 프레임을 제작 완료
아직 프로젝트 시일이 남은 관계로 추가적으로 구현하고 싶은 기능이나
애니메이션 관련하여 추가 제작을 할 예정
Chapter .2 Git hub 특강 (feat. 오정호 튜터님)
차례
- Git 은 무엇인가?
- Git hub 사용방법
- 충돌 발생 원인 / 회피 방법
- Git Flow 전략
- Git Convention
Git은 무엇인가?
(1) Git이 없는 상황으로 전례
- 전례1-1. A 기능 구현 -> 작업물을 B, C, D 등에게 직접 공유
문제점) 전달 시 필요 내용을 빼먹을 수 있고, 전달 받은 팀원이 제대로 적용을 못할 수 있음
- 전례1-2. D 기능 구현 -> 작업물을 A, B, D 등에게 직접 공유
문제점) 전달 받은 내용을 순서대로 적용하지 못하고 문제 발생할 수 있음
- 전례 2. A, B, C, D 모두 기능 구현
문제점) 사표가 답이다
(2) 저장소를 통해 문제 해결 진행 (Git)
- 지역 저장소 : local repositori
- 공용 저장소 : remote repositori
(3) Git을 통해 문제점 해결
- 한번에 모든 내용을 다운받다 보니 구분이 불가능
해결법) 메모지에 내용을 적어서 공유하여 문제 해결
- 작업물이 겹치기 시작하며 문제 발생
해결법) 공용 저장소를 늘려서 문제 해결
- 팀 프로젝트를 하는데 본인이 이용하는 Branch만 이용하다 보니 개인 프로젝트가 됨
해결법) 공용 저장소에 구조를 만들고 복제를 통해
하위 저장소에서 상위 저장소로 합치는 과정을 통해 문제 해결
(4) 용어 정리
- A) Commit : Local repositori 에 메모
- B) History : Commit 이 모여있는 장소
- C) Push : Local 에서 Remote 로 이동시키는 작업
- D) Pull : Remote 에서 Local 로 이동시키는 작업
- E) Branch : 각각의 복제된 공용 저장소를 지칭
- F) Merge : Branch 에서 Branch 로 정보를 이동
- G) Amend : Commit 한 내용을 수정해서 작성
- H) Undo : Commit 한 내용을 취소 (Changes로 복구)
- I) Revert : Commit 한 내용을 취소하지만 Revert Commit 이라는 History를 기록함
- J) Checkout : History 에서 원하는 Commit 부분을 선택하여 해당 작업 내용으로 돌아가기
[2] GIt hub 사용방법
(1) Git hub 사용 순서
-
A) 원격 레포지토리를 생성 (Create a New Repositori on your hard drive...)
Name(이름 작성) / Local path(저장 위치 선택) / Git ignore (Unity 선택)
Name (기존 프로젝트 이름) / Local path (기존 저장 위치 선택) -> 복제 안하고 작업 진행 가능
-
B) 레포지토리 등록 (Publish repositori)
-
C) 지역 저장소 확인 (Current repositori -> 우클릭 -> Show in Explorer -> 저장 위치 확인)
-
D) 메모하기 (Changes -> 선택 -> Summary 작성 -> Commit to @@ -> History에서 확인 가능)
-
E) Push 하기 (Push origin 클릭 -> 원격 저장소로 내용 전달)
(2) Unity 폴더 구조
- A) Assets (중요!)
- B) Packages (중요!)
- C) ProjectSettings (중요!)
- D) Library, Logs, UserSettings (불필요 -> 삭제해도 됨)
(3) Git ignore
- A) 무시할 파일을 적용
- B) .gitignore 메모장에서 공유하고 싶지 않은 내용을 추가할 경우 git에 공유하지 않음
(4) Git에서 팀원 추가 방법
- A) Git 에서 Repositori 선택
- B) 상단 Settings 선택
- C) Add people 선택 후 추가할 유저의 E-mail 주소를 입력하여 팀원 추가 가능
(5) Branch 만드는 방법
- A) Current branch 클릭
- B) New branch 클릭 후 이름 작성 및 복제할 Branch 선택
- C) Publish branch 클릭하여 공유
(6) Changes 관리 방법
- A) Discard changes : 수정 작업 삭제
- B) Stash changes : 수정 작업 임시 저장 (Summary 위에 Stashed Changes 에 수정 작업 내용 생성)
- C) Restore : Stashed Changes 에서 Changes 로 복구
(7) Merge 작업 방법
- A) Merge 를 시킬 Branch 선택
- B) Choose a branch to merge into @@ 를 클릭
- C) Merge 를 받을 Branch 선택
- D) Create a merge commit 을 클릭
※ 주의 사항
- Merge 를 하기 전에 부모 Branch 로 이동해서 변경 점 확인
- 변경 점이 있다면 자신의 Branch 로 돌아와 부모 Branch 를 Merge
- 위 작업이 끝나면 부모 Branch 로 다시 Merge해야 안전함
[3] 충돌 발생 원인 / 회피 방법
(1) 충돌이 나는 경우
- A) 같은 스크립트에서 같은 줄 내용을 수정 시 무조건 충돌
- B) 아예 동일한 내용을 수정 시 무조건 충돌 (역할 분담을 확실하게 해서 겹치지 않도록 해야 함)
- C) Scene 을 여러 명이 수정하는 경우 충돌 (파일 자체의 변경이라 복구 불가 / 한 가지 작업을 선택)
(2)대규칙
- 하나의 파일을 여러 명이 동시에 작업하지 말 것
(3) Q&A
- Q : Scene 에 작업할 게 많아서 혼자 전부 만들 수가 없어요 (ex. UI)
- A : 해결 방법은 동적 생성
[4] Git Flow 전략
(1) Git Flow 전략의 다양성


(2) Git Flow 전략 구상 단계
- 팀 프로젝트를 시작하기 전에 팀원들과의 합의 후에 정해서 진행하는 것이 맞음
[5] Git Convention
(1) Git Convention 규칙을 사용하는 이유
- 팀 내에 누가 보더라도 어떤 부분이 변경되었는지 확인하기 쉽게 하기 위함
- 일을 효율적으로 진행하기 유리함

실전은 최고의 연습이라고 한 만큼 많이 사용해보고 많이 경험해 보자
C#, Unity, 와이어 프레임, Git hub, CS 지식 공부하기!!