티스토리 뷰

반응형

Tuist 튜토리얼 이 major version 3 기준이라서

초기 만들어지는 파일이나 폴더가 major version 4 랑 많이 다르다.

 

동료분과 Tuist 팀의 도움으로 겨우 4.7.0 기반 프로젝트 만들기 성공함 🥹

3과 달리 4는 한땀한땀 직접 추가해야하는 경우가 많아서 기록해둠 

 

 

[1] Tuist 4 버전대 설치

Installation 가이드 보고 mise 설치 후, tuist 설치 해주면 된다. 

 

나는 옛날에 mise 말고 다른 툴로 tuist 3 버전대를 설치했어서 

이 이슈로 시간 많이 잡아먹음 ;; 

(tuist install 명령어를 통해 외부 의존성을 설치하겠다는 건데 명령어가 충돌나서 tuist 자체를 설치하려고 했던 기억)

 

답변에 있는 것 처럼 uninstall 하고 mise 로 다시 설치하면 된다. 

어케 저케 꼬여가지고 mise 도 uninstall 한번 했는데 

mise 문서 보면 uninstall 이 아니라 implode 를 지우는 명령어로 사용하고 있다는 점 유의! 

 

 

[2]  빈 폴더 만들고 Tuist 버전 지정하기 

빈 폴더를 만들고 진입한다. 

tuist 버전이 여러개인 경우 ( ~/.local/share/mise 들어가서 확인 가능) 

 

 

tuist 버전을 반드시 지정해준다. 

 

 

나는 맨 위 명령어를 사용해줬다. 

mise use tuist@4.7.0

 

 

 

 

 

[3] 프로젝트 만들기 

 

아래 명령어로 프로젝트를 만들어준다. 

tuist init --platform ios

 

 

그럼 이렇게 SwiftUI 기반의 앱이 만들어진다. 

 

 

 

 

 

UIKit 기반의 앱을 만드는 옵션이 없는 것 같아서 여쭤보니까

UIKit 기반으로 앱을 만들고 그 다음에 tuist 를 설치하라고 하셨다. 

 

Project.swift 는 이렇게 구성되어있다.

 

 

3 버전대와 다르게  Project+Templates.swift 는 만들어지지 않는다! 

 

[4] 프로젝트 구조 잡기  

아래 명령어를 실행해서 프로젝트 구조를 세팅해주자

tuist edit

 

 

 

tuist generate 명령어를 실행시키면 (아래 단계) 

여기 manifests 를 기반으로 workspace 를 만들어주게 될 것이다. 

 

 

Project structures 가이드를 보고 동일하게 구성해주자

 

 

우선 Projects 폴더를 만들어주자

 

 

 

일단 App 하나만 구성해보자 

Projects 에 TuistApp 을 통째로 옮겨오고 project.swift 도 여기 넣어주자 

(프로젝트 별로 project.swift 파일이 있어야한다)

 

 

 

그리고 경로가 바뀌었으니 TuistApp/ 되어있는 부분도 지워준다.

(sources, resources 부분) 

 

 

 

그다음 Tuist 폴더를 만들어주고 필요한 파일들을 추가해준다

Config.swift이니셜라이저에 디폴트값이 다 되어있으니 이렇게만 일단 추가해줬다. 

 

 

 

Pacakge.swift 도 일단 최소한으로만 작업해준다. 

(참고로 3번 라인 까지만 쓰면 tuist install 시 에러가 난다)

 

 

 

그다음 workspace.swift  를 루트에 추가해준다. 

 

 

 

[4] 워크스페이스 만들기

 

tuist install 을 먼저 해준다. (아무 의존성이 없어도 tuist install 을 하라고 에러가 뜨기 때문) 

tuist install

 

 

아래 명령어로 워크스페이스를 만들어준다. 

tuist generate

 

 

참고로 이런 에러가 뜬다면 Projects 밑에 폴더가 잘 옮겨졌는 지를 확인해봐야한다.

 

 

빨간 에러에 포커싱해서 debug config 를 추가해주려고 하면 안된다. (이 문제가 아니다) 

 

 

 

[5]  내부 의존성 추가해보기 

 

아래 명령어 실행

tuist edit

 

Projects > TuistUI 폴더 만들고

Project.swift 파일 추가

 

 

 

이 명령어 돌리면 

tuist generate

 

 

Derived 랑 proj 생김 

 

 

workspace 에도 생겨있음 

 

 

 

Sources > CommonView 만들어줌 

 

 

 

다시 아래 명령어 

tuist edit

 

 

TuistUI 에는 sources 명시 

 

 

 

TuistApp 은 디펜던시 명시 

 

 

 

아래 명령어 실행 

tuist generate

 

 

확인 

 

 

확인 

 

 

 

[ 여쭤보기 ]

framework 는 경로를 이상하게 찾는듯? 

.framework(path: "../TuistUI")

 

 

[6] 외부 의존성 추가해보기 

 

Tutorial > Adding external Dependencies 코드 복사  (import ProjectDescriptionHelpers 빼고)

 

 

 

tuist 가 SPM으로 받아와서 framework 로 재구성해주는 것이라고 함! 

 

tuist install

 

Package.resolved 가 Tuist 폴더에 추가되는 것을 볼 수 있음 

 

 

 

외부 의존성 넣고

 

 

tuist generate

 

확인 

 

 

 

tuist generate 를 3,4번 하니까 그제야 Dependencies 가 생기고 import 성공했음;; 

아무튼 확인 

 

 

 

 

 

반응형
댓글