본문 바로가기

iOS/iOS

iOS) SwiftLint 적용하기 - CocoaPods

SwiftLint

A tool to enforce Swift style and conventions, loosely based on GitHub's Swift Style Guide.

Realm에서 제공하는 Swift 전용 Lint이다. 여기서 Lint란 소스 코드를 분석하여 프로그램 오류, 버그, 스타일 오류, 의심스러운 구조체에 표시(flag)를 달아놓기 위한 도구들을 가리킨다.

1. CocoaPod 설치

sudo gem install cocoapods

혹시 CocoaPod이 설치되어 있지 않다면 다음의 명령어를 실행하면 된다.

2. CocoaPod 적용

pod init

터미널에서 프로젝트 디렉토리로 이동한 후 pod init을 한다. 그러면 다음과 같이 Podfile이 생성된다.

3. Podfile 수정

vim Podfile

Podfilepod 'SwiftLint'를 추가한다.

Podfile을 저장한 후 터미널에서 pod install 한다.

pod install

그러면 다음과 같이 주의 메세지가 나오는데 앞으로 xcodeproj 파일 대신 xcworkspace 파일을 열라는 의미이다.

4. SwiftLint 적용

워크스페이스 파일을 열어도 아직 아무런 변화가 없다.
파일 네비게이터에서 Project File을 선택한 후 primary app target -> Build Phases를 선택한다.

그 다음 +(add a new build phase) 버튼 -> New Run Script Phase를 선택한다.

새로 생성된 Run Script에 다음의 스크립트를 넣는다.

"${PODS_ROOT}/SwiftLint/swiftlint"

이러면 에러가 왕창 뜰 것이다.

5. 린트에서 제외할 대상 정하기

프로젝트 디렉토리에서 .swiftlint.yml을 생성한다.

vim .swiftlint.yml

다음과 같은 내용을 넣어서 린트에서 제외할 대상을 정할 수 있다.

excluded:
    - Pods
    - 프로젝트명Tests
    - 프로젝트명UITests
disabled_rules:
    - trailing_whitespace
    - identifier_name
line_length: 
  ignores_comments: true

참고