아래 링크되어 있는 SwiftLint
의 Github 에서 확인할 수 있듯이 Homebrew
, CocoaPods
, Mint
를 이용해 설치할 수 있다.
이 중 나는 CocoaPods
을 이용해 설치해보았다.
(CocoaPods 이 설치되어있다는 가정하에 진행)
원하는 경로를 터미널에서 열어 pod init
Podfile
에 pod 'SwiftLint'
를 추가 (나는 SnapKit 도 같이 설치함)
다시 터미널에서 pod install
( 아래 이미지와 같다면 설치 완료! )
프로젝트 설정 ➡️ Build Phases ➡️ 좌측 상단 +
버튼 ➡️ New Run Scipt Phase
이름을 Run SwiftLint 로 변경하고, "${PODS_ROOT}/SwiftLint/swiftlint"
코드를 입력해준다.
스크립트 언어라 반드시 큰 따옴표를 넣어야한다. (큰 따옴표를 빼먹어서 한참 삽질함,,)
위치를 Complie Sources 위로 올려주면, 컴파일 전 스크립트를 실행시켜 SwiftLint 룰 검사를 먼저 실행시킨다고 함 (효율성 증가)
정상 설치 및 작동을 하게 되면, 아래와 같이 무수히 많은 Warning이 뜬다.
다 설정하고 나면, 내가 작성하지 않은 Pods
파일에도 Warning 이 뜬다.
이때 xcode에서 Empty 파일 하나를 생성한다.
파일 이름은 반드시 .swiftlint.yml
이어야 한다.
파일 생성을 누르면, .을 앞에 붙이면 숨김파일이 되는데 괜찮냐는 경고문이 뜬다.
그냥 Use "."
버튼을 누르면 된다.
내부 구성은 아래와 같이 이루어지고, excluded
에 Pods
을 넣어주면 된다.
이렇게 만든 파일을 프로젝트 내 최상단으로 올려주면 끝!
disabled_rules: # 실행에서 제외할 룰 식별자
included: # 린트 과정에 포함할 파일 경로. 이 항목이 존재하면 `--path`는 무시됨
excluded: # 린트 과정에서 무시할 파일. included 보다 우선순위
- Pods
참고 문서
1. https://github.com/realm/SwiftLint
2. https://moonggi-dev-story.tistory.com/45