협업 중 일관된 코드 품질을 유지하기 위해 Swift Lint를 도입하기로 결정했다.
Lint는 작성되는 코드에서 문법을 담당하며, 단일 프로젝트에서의 일관성, 프로젝트 간 일관성, 팀원 간 코드의 일관성을 유지하면서 가독성도 높일 수 있다.
Lint를 도입하기 위해 다음의 작업을 수행하기로 했다.
develop branch를 rebase 한 후, cocoapods 설치를 시작하였다.
cocoapods 페이지와 ZeddiOS 블로그를 참고하였다.
sudo gem install cocoapods
잘 설치되는 듯 하다가 설치 중간에 에러 메세지가 떴다.
ERROR: Error installing cocoapods:
ERROR: Failed to build gem native extension.
current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.0/ext/ffi_c
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210510-21258-1ntewrt.rb extconf.rb
그래도 잘 동작하지 않을까 하는 마음에 pod을 실행해봤다.
$ pod --version
-bash: pod: command not found
설치가 안되었다고 한다.
cocoapods not installed로 검색해보았다.
stackoverflow에서 관련 내용을 찾을 수 있었다.
sudo gem install -n /usr/local/bin
결과는 1과 같았다.
$ pod --version
-bash: pod: command not found
이 방법도 안될 경우에 xcode 재설치나 Ruby 업데이트 등을 해보라는 의견이 있었다.
그러나 쉽게 엄두가 나지 않았고, 좀 더 간편한 방법으로 해결하고 싶었다.
stackoverflow에 brew로 성공했다는 사람들이 보여서, 한번 시도해보았다.
brew install cocoapods
결과는 성공
$ pod --version
1.10.1
프로젝트 폴더로 이동해 pod install
도 실행하였다.
결과는 성공
$ pod install
Analyzing dependencies
Adding spec repo `trunk` with CDN `https://cdn.cocoapods.org/`
Downloading dependencies
Installing SwiftLint (0.43.1)
Generating Pods project
Integrating client project
Pod installation complete! There is 1 dependency from the Podfil
다만 찾아보니 brew로 설치한 경우 추후에 몇가지 오류가 발생할 가능성이 있다고 한다.
https://bonoogi.postype.com/post/4887709
나중에 오류가 발생하면 참고해야겠다.