Tuist를 사용하여 Xcode 프로젝트 관리하기

Youngseok-O·2024년 5월 2일
0

ios

목록 보기
1/4

Tuist란?

쉽게 말해 Xcode 프로젝트를 관리하는 도구

Tuist가 프로젝트 파일을 직접 생성해 주기 때문에 git conflict를 방지할 수 있고, Project.swift 파일을 통해 설정을 관리할 수 있다.
또한 바이너리로 배포되므로 종속성을 관리하기 위해 다른 도구에 의존하지 않고도 쉽게 설치하고 사용할 수 있다.

언제 Tuist를 사용하는가?

주로 모듈화를 할 경우 Tuist를 많이 사용한다.

모듈화의 장점

  • 모듈간 결합도는 낮게, 응집도는 높게 하여 안정성이 향상된다.

  • 모듈의 의존성을 낮추어 각 모듈에 대한 고려 범위를 줄여 개발 속도가 향상된다.

  • 특정 기능에 대한 코드 리뷰 시 관련 모듈만 리뷰함으로써 편의가 향상된다.

  • 변경사항이 있는 부분만 빌드함으로써 빌드 속도가 향상된다.

  • 용도에 맞는 배치를 통해 앱의 복잡성을 줄이고 좋은 아키텍처 설계가 가능하다.

Tuist 설치하기

$ curl -Ls https://install.tuist.io | bash

위 명령어를 터미널에 입력하면 최신 버전의 Tuist가 설치된다.
Tuist 4.x 부터 mise(구 rtx)를 이용한 설치를 권장하고 있다.
아래 순서를 따라 설치하는 것을 권장한다.

1. mise 설치

$ curl https://mise.run | sh
$ chmod +x ~/.local/bin/mise
$ ~/.local/bin/mise --version

2. 환경변수 설정

# note this assumes mise is located at ~/.local/bin/mise
# which is what https://mise.run does by default
$ echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc
$ echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc
$ echo '~/.local/bin/mise activate fish | source' >> ~/.config/fish/config.fish

자신이 사용하는 shell에 맞는 명령어를 입력하면 된다.

3. Tuist 설치

$ mise install tuist

4. Tuist 활성화

$ mise use -g tuist

Tuist를 전체 위치에서 활성화 시킨다.

5. Tuist 설치 확인

$ tuist version

Tuist 버전이 정상적으로 출력되면 설치가 완료된 것이다.

프로젝트 생성하기

설치한 Tuist로 Xcode 프로젝트 생성이 정상적으로 되는지 확인한다.

1. 프로젝트 폴더 생성 및 작업 디렉토리 이동

$ mkdir TwistApp
$ cd TwistApp

2. Tuist 초기화

$ tuist init --platform ios // UIKit
$ tuist init --platform ios --template swiftui // SwiftUI

개발하려는 프레임워크에 따라 명령어를 실행하면 된다.

3. Xcode 프로젝트 및 워크스페이스 생성

$ tuist generate

위 명령어를 실행하면 워크스페이스 파일이 자동으로 열린다.

$ tuist build

tuist build 명령어를 실행하면 터미널에서 빌드가 가능하다.

4. 프로젝트 설정

$ tuist edit

Manifest 파일이 있는 엑스코드 프로젝트가 생성되면서 열린다.
그 중에는 Project.swift 파일이 있다.
이 단계에서 외부 의존성(Library 등)을 추가하면 된다.

-> pakage 파일의 dependencies에 다음 사진과 같이 library url, version을 작성하고 해당 library를 사용하고 싶은 위치에 선언해주면 원하는 곳에서만 해당 library를 사용할 수 있다.

pakage

사용 위치

tuist edit 명령어를 통해 Dependencies를 추가했다면 다음 작업으로

$ tuist install

위 명령어를 터미널에서 실행하여 추가한 Dependencies를 설치한다.

$ tuist generate

그 후 위 명령어를 실행하여 생성된 워크스페이스에서 추가한 Dependencies를
확인한다.

트러블 슈팅

Tuist를 설치하고, Tuist로 프로젝트를 생성하고 관리하는 방법을 작성해 보았다. 위 과정에서 발생한 트러블슈팅은 다음 게시글에서 다루도록 한다.

Sources / Resources가 존재하지 않는다는 오류

profile
Computer Engineering, Swift, iOS Developer

0개의 댓글