티스토리 뷰
Tuist에 대해서 공부하면서 작성한 글이라 잘못된 부분이 있을 수 있습니다. 정확한 정보는 https://docs.tuist.io/tutorial/get-started 에서 확인하시길 바랍니다.
Tuist란?
Tuist는 Xcode프로젝트를 생성, 관리하는 command line tool입니다.
협업 때 프로젝트 충돌을 방지하기 위해서 사용합니다.
시작하기
설치
터미널에 아래 커맨드 입력
bash <(curl -Ls <https://install.tuist.io>)
프로젝트 만들기
디렉토리 만들기
mkdir MyApp cd MyApp
실행하기
tuist init --platform ios
manifest라고 불리는 설정 파일은 다음과 같습니다.
import ProjectDescription
let project = Project(
name: "MyApp",
organizationName: "MyOrg",
targets: [
Target(
name: "MyApp",
platform: .iOS,
product: .app,
bundleId: "io.tuist.MyApp",
infoPlist: "Info.plist",
sources: ["Sources/**"],
resources: ["Resources/**"],
headers: Headers(
public: ["Sources/public/A/**", "Sources/public/B/**"],
private: "Sources/private/**",
project: ["Sources/project/A/**", "Sources/project/B/**"]
),
dependencies: [
/* Target dependencies can be defined here */
/* .framework(path: "framework") */
]
),
Target(
name: "MyAppTests",
platform: .iOS,
product: .unitTests,
bundleId: "io.tuist.MyAppTests",
infoPlist: "Info.plist",
sources: ["Tests/**"],
dependencies: [
.target(name: "MyApp")
]
)
]
)
프로젝트 생성하기
다음 커맨드를 입력합니다.
tuist generate
MyApp.xcodeproj 와 MyApp.xcworkspace 파일이 생성됩니다.
다음 커맨드를 입력하면 프로젝트파일만 생성할 수 있습니다.
tuist generate --project-only
기존 프로젝트에 Tuist 적용하기
MyApp.xcodeproj 와 MyApp.xcworkspace 파일을 삭제합니다.
디렉토리에 Project.swift 파일을 만들어줍니다.
touch Project.swift
터미널에 다음과 같이 입력해줍니다.
tuist edit
터미널에는 다음과 같이 나옵니다.
tuist edit
Generating workspace Manifests.xcworkspace
Generating project Manifests
Generating project Plugins
Opening Xcode to edit the project. Press CTRL + C once you are done editing
아래와 같이 나오면 성공입니다.
프로젝트 파일에 프로젝트를 만들어줍니다.
import ProjectDescription
let target = Target(
name: "WebTest",
platform: .iOS,
product: .app,
bundleId: "com.Kimbaechu.WebTest",
infoPlist: .default,
sources: ["WebTest/Sources/**"],
resources: ["WebTest/Resources/**"],
dependencies: []
)
let project = Project(
name: "WebTest",
organizationName: nil,
options: [],
packages: [],
settings: nil,
targets: [target],
schemes: [],
fileHeaderTemplate: nil,
additionalFiles: [],
resourceSynthesizers: []
)
창을 종료하고 터미널에 돌아와 CTRL + C 를 입력합니다.
여기서 Sources와 Resources를 구분해야합니다.
swift파일은 Sources폴더를 만들어서 넣어주시고 나머지 파일들은 Resources파일에 넣어주시면 됩니다.
그 다음 아래 커맨드를 입력합니다.
tuist generate
터미널에 다음과 같이 나오면 정상입니다.
Generating workspace WebTest.xcworkspace
Generating project WebTest
Project generated.
Total time taken: 0.494s
이제 프로젝트를 열어보겠습니다.
명령어로는 xed . 를 입력하시면 됩니다.
Derived는 Tuist가 만드는 것이니 신경쓰시지 않아도 됩니다.
'iOS' 카테고리의 다른 글
[iOS] Tuist 사용법 - Project Settings (3) (0) | 2021.09.17 |
---|---|
[iOS] Tuist 사용법 - Dependencies (2) (0) | 2021.09.17 |
[iOS] WWDC2017 Engineering for Testability / Testable App Code - 번역 (0) | 2021.08.25 |
[iOS] Enums as configuration: the anti-pattern - 번역 / Enum을 이용한 설정 (0) | 2021.08.24 |
[iOS] URL Scheme vs Universal Link 차이 (deep link?) (2) | 2021.08.23 |