0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SPMのDependencyを編集してみる

Last updated at Posted at 2020-03-16

目的

この記事はEditing a Package Dependency as a Local PackageというApple Documentをスクショ付きで実行していく記事です。

概要

SPMのDependencyはリモートのままでは編集することができません。ローカルのDependencyを追加するとSPM側で認識して上書きされ、ローカルのものが使われるようになり編集可能になります。リモート利用に戻したい時はローカルを取り除くだけです。

今回の記事ではこれを実行していきます。

手順

  1. OSSのプロジェクトのソースコードをダウンロードする(Cloneでもzipでも良い)
  2. 使いたいプロジェクトを開く
  3. ProjectNavigatorへコピーする

0. 問題発生

利用しているOSSでなんらかのクラッシュを引いてしまった...。でも自分が特に変な使い方をしているとも思えないので、ソースコードを編集しながら試してみたい。(CocoaPodsでは良くやっていた)
スクリーンショット 2020-03-16 13.31.16.png

1. OSSのソースコードダウンロード

今回はzipで行いました。
スクリーンショット 2020-03-16 13.33.07.png

2. 使いたいプロジェクトを開く

プロジェクトファイルかワークスペースファイルを開くだけです。

3. Project Navigatorへコピーする

前準備として、パッケージ名とディレクトリ名が一致している必要があるので、zipでダウンロードすると「SwiftUI-master」という名前になっていて都合が悪いのでrenameしておきます。

スクリーンショット 2020-03-16 13.48.45.png

そのディレクトリをProject Navigatorへコピーします。

スクリーンショット 2020-03-16 13.54.07.png

コピーする前のProject Navigatorはこのようになっていました。
スクリーンショット 2020-03-16 13.44.57.png

同名のパッケージをProject Navigatorに追加すると、Localの方で上書きされ、リモートの方は表示されなくなります。自分の場合、利用しているパッケージが1つだけだったのでSPMの表示ごと消えました。

おわりに

こうして無事にローカルで編集しながら作業を進めることが可能になりました。開発中はCloneしてきたレポジトリを利用してOSSにコミットしながら進めて、リリースする時はLocal Dependencyを削除してリモート版を使うなどの運用が良さそうではないでしょうか。

これで記事は終わりです。ありがとうございましたー。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?