Kiosk Team Project (2) - Github 협력하기

ulls12·2023년 12월 27일
0

Swift TIL

목록 보기
22/60

1. Xib

팀원들이 각각의 기능을 구현하고 병합하는 데 가장 중요한 부분은 충돌을 일으키지 않는 것이다. 그래서 처음 생각했던 것은 각자 하나의 storyboard와 viewcontroller을 만들고 Xcode 라이브러리에 있는 스토리보드 레퍼런스를 이용하여 각각의 스토리보드를 연결시키고자 했었다. 하지만, 프로젝트에서 요구하는 바는 하나의 스토리보드에 하나의 scene 만이 필요로 했었고 굳이 여러개의 스토리보드를 구현하는 불필요한 작업이 필요하지 않았다.
좀 더 효율적인 협업을 생각하던 와중, Xib에 대해 알 수 있었다. Xib는 간단하게 말하자면, 각각의 UIView의 기능을 파일 별로 구역화시켜 줄 수 있는 미니 스토리보드(?)이다.

Xib는 storyboard와 설정하는 메커니즘이 똑같다.
1. xib 파일 생성하기
user interface에 있는 view로 xib파일 생성 후 cocoa touch class로 view.swift 파일 생성
2. identifier을 설정
3. IBOutlet & IBAction 연결
4. 기능 코드 구현

2. Github 충돌 최소화하기

협업을 통해 개발을 진행하다 보면 충돌이 정말 빈번하게 일어난다. 이러한 충돌을 최소화하기 위해 개발에 불필요한 파일들은 git push가 되지 않도록 하는 방법도 필요하다. gitignore을 이용하는 것이다.

  1. 개발 진행중인 Github 레포지토리에 .gitignore 직접 입력하면 개발 언어를 고르는 선택항목이 나온다.
  2. Swift 를 설정하면 자동으로 업로드하지 않을 파일들이 지정된다.
  3. 충돌의 주범인 .DS_Store 을 직접 입력하여 추가시킨다
  4. git commit & push를 할 때 자동으로 .gitignore에 입력된 파일들을 걸러서 올려준다

개발 도중에 .gitignore 파일을 추가한 경우

개발 시작과 동시에 IDE에서 직접 .gitignore을 추가하고 push하면 해당파일들이 업로드 되지 않지만, 개발 도중에 추가한다면 적용이 되지 않고 계속 업로드를 진행하게 된다. github에 파일이 이미 올라가 있기 때문에 이 파일들을 모두 제거하고 다시 생성하면 문제가 해결된다.

git rm -r --cached .
git add .
git commit -m "메세지 작성"
git push

이 과정을 터미널을 통해 입력하게 되면 Github에 내가 .gitignore을 통해 지정한 파일들을 제외하고 올라가게 된다.

내일 할 일

  1. xib와 storyboard 연결하는 법 자세히 알아보기
  2. xib에 넣을 프레임워크 코드 검색 & 구현하기
profile
I am 개발해요

0개의 댓글