概要
iOS開発者向けによく使うコマンドをチートシートとしてまとめてみました。
- Certificates / Provisioning Profiles
- CocoaPods
- Carthage
- Fastlane
- ffmpeg
- Swift Compiler
- SwiftLint
- Xcode
- Homebrew
- .gitignore
Certificates / Provisioning Profiles
# 秘密鍵を作成 / Create Private Key
openssl genrsa -out private.key 2048
# CSRを作成 / Create CSR
openssl req -new -key private.key -out CertificateSigningRequest.certSigningRequest -subj "/emailAddress=[メールアドレス], CN=[コモンネーム], C=JP"
# キーチェーンの証明書一覧を表示 / Print certificates in keychain
security find-identity -p codesigning -v
# ローカルに保存されたプロビジョニングプロファイル一覧を表示 / Print provisioning profiles
ls ~/Library/MobileDevice/Provisioning\ Profiles/
CocoaPods
# インストール / Install
sudo gem install cocoapods
# Podsの削除 / Delete Pods
rm -rf Pods; rm Podfile; rm Podfile.lock
# Podfileの初期化 / Init Podfile
pod init
# ライブラリのインストール / Install libraries
pod install
# ライブラリのアップデート / Update Libraries
pod update
# Podspecの初期化 / Create PodSpec
pod spec create pod_name
# Podspecのチェック / Lint PodSpec
pod lib lint
# Trunkアカウントの登録 / Create Trunk Account
pod trunk register mail_address 'your_name'
# Podsライブラリの公開 / Publish Pods
pod trunk push pod_name.podspec
# キャッシュの削除 / Delete Caches
pod cache clean --all
rm -rf ~/Library/Caches/CocoaPods/
Carthage
# インストール / Install
brew install Carthage
# ライブラリのインストール / Install Libraries
carthage bootstrap --platform iOS --cache-builds
# ライブラリのアップデート / Update Libraries
carthage update --platform iOS --cache-builds
# XCFileListの生成 / Create XCFileList
ls Carthage/Build/iOS | grep -E .+framework$ | sed 's/.*/$(SRCROOT)\/Carthage\/Build\/iOS\/&/' > CarthageInput.xcfilelist
# ビルド / Build
carthage build --no-skip-current
# キャッシュの削除 / Delete Caches
rm -rf ~/Library/Caches/org.carthage.CarthageKit
rm -rf ~/Library/Caches/carthage
Fastlane
# インストール / Install
brew cask install fastlane
# 初期設定 / Init fastlane
fastlane init
# メタデータのダウンロード / Download Metadata
fastlane deliver download_metadata --force
# メタデータのアップロード / Upload Metadata
fastlane deliver --force --skip_screenshots --skip_binary_upload --skip_app_version_update
# スクリーンショットのダウンロード / Download Screenshot
fastlane deliver download_screenshots --force
# スクリーンショットの生成(frameit) / Create Screenshot
fastlane frameit(path: './fastlane/screenshots/', white: false)
# スクリーンショットのアップロード / Upload Screenshot
fastlane deliver --force --skip_binary_upload --skip_metadata --skip_app_version_update --overwrite_screenshots
# バイナリのアップロード / Upload Binary
fastlane deliver --force --skip_screenshots --skip_metadata --skip_app_version_update
# 自動リリースで申請 / Submit for Review
fastlane deliver --force --skip_screenshots --skip_metadata --skip_app_version_update --skip_binary_upload --automatic_release --submit_for_review
# セッションクッキーの削除 / Delete Session Cookie
rm ~/.fastlane/spaceship/**/cookie
ffmpeg
# インストール / Install
brew install ffmpeg
# Gifの生成 / Create Gif
ffmpeg -i sample_01.mov -vf scale=400:-1 -r 20 sample_01.gif
Swift Compiler
# ASTの整形出力 / Parse and type-check input file(s) and pretty print AST(s)
swiftc -print-ast file
# ASTのダンプ / Parse and type-check input file(s) and dump AST(s)
swiftc -dump-ast file
SwiftLint
# インストール / Install
brew install swiftlint
# Lint
swiftlint
# 自動修正 / AutoCorrect
swiftlint autocorrect
# ドキュメントの出力 / Print Docs
swiftlint generate-docs
# オプトインルールの全コピー / Copy All Opt-In Rules
swiftlint rules | awk -F "|" '$3 ~ "yes" { print $2 }' | tr -d ' ' | sed 's/^/ - /' | pbcopy
# キャッシュの削除 / Delete Caches
rm -rf ~/Library/Caches/SwiftLint
Xcode
# Developerディレクトリの指定
sudo xcode-select --switch /Applications/Xcode.app
# コア数を確認してコンパイルに利用するコア数を設定 / check number of cores, and set number to build
system_profiler SPHardwareDataType | grep "Cores"
defaults write com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks [number_of_core]
# ビルド時間を出力 / show build time
defaults write com.apple.dt.Xcode ShowBuildOperationDuration YES
# targets, configurations, schemes一覧を出力 / print targets, configurations, schemes
xcodebuild -list
# SDK一覧を出力 / print sdks
xcodebuild -showsdks
## ディスク容量削減
rm -rf ~/Library/Developer/Xcode/Archives
rm -rf ~/Library/Developer/Xcode/iOS DeviceSupport/
rm -rf ~/Library/Application Support/iPhone Simulator
## クリーン / Clean
xcodebuild -alltargets clean
rm -rf ~/Library/Developer/Xcode/DerivedData/
rm -rf ~/Library/Caches/com.apple.dt.Xcode/
rm -rf ~/Library/Developer/Xcode/iOS\ DeviceSupport/*/Symbols/System/Library/Caches
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang.$(whoami)/ModuleCache"
xcrun --kill-cache
xcrun simctl erase all
Homebrew
# インストール / Install
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# キャッシュの削除 / Delete Caches
rm -rf ~/Library/Caches/Homebrew
brew cleanup -s
rm -rf $(brew --cache)
.gitignore
# .gitignoreの生成 / Create .gitignore
brew install gibo
gibo dump Swift Xcode >> .gitignore
# .gitignoreのクイックコミット / Quick Commit .gitignore
git add .gitignore;git commit -m "add .gitignore"
# git管理されないファイルの削除コミット / Quick Commit Igonored Files
git rm -r --cached .;git add .;git commit -m "rm ignore files"
Gitリポジトリ
こちらの内容はこちらのgitリポジトリからも参照できます。
https://github.com/shtnkgm/iOSCommandCheatSheet