[解決済み] CocoaPodsとGitHubのフォーク
質問
GitHubのプロジェクトをフォークするのは初めてで、CocoaPodsもあまり得意ではないので、ご容赦ください。
基本的に、私はGitHub上のプロジェクトをフォークし、自分の
Podfile
:
pod 'REActivityViewController', '~> 1.6.7', :git => 'https://github.com/<username>/REActivityViewController.git'
その後、フォークにいくつか変更を加え、もちろん
pod install
を実行して別のポッドをインストールすると、元の
REActivityViewController
を再インストールし、私の変更を消してしまいました。
私は自分のフォークに変更をプッシュする必要があることに気づきました。
pod install
の前に自分のフォークに変更をプッシュする必要があることに気づきましたが、これはCocoaPodsによってインストールされたレポであることを考えると、それがインストールされているフォークであることをどうやって知ることができるでしょうか?私は
REActivityViewController
フォルダの下にインストールされている
Pods
フォルダの下にインストールされ、git ファイルはありません。
私のプロジェクトの外でフォークに取り組み、それからCocoaPodsを使用して変更をインストールする必要がありますか?それはあまりにも面倒なワークフローです。
それともサブモジュールで何かする必要がありますか?
どのように解決するのですか?
私は例を使ってこの質問に答えます。私は、TTTAttributedLabelのフォークに、ここで追加したいくつかの機能を持たせています。
これをCocoapodsのプロジェクトで使用するために、私は。
- 自分の変更を自分のフォークにプッシュする
- Podfileに変更を取り込むための設定 & update
変更をフォークにプッシュしたら、最後のコミットの SHA を取得します。 これを行うには
git rev-parse origin/master | pbcopy
を使うか、あるいは
GitHub のコミットページ
をご覧ください。
そして、Podfileの中で、フォーク上の特定のコミットを次のように指定することができます。
pod 'TTTAttributedLabel', :git => 'https://github.com/getaaron/TTTAttributedLabel.git', :commit => 'd358791c7f593d6ea7d6f8c2cac2cf8fae582bc1'
その後に
pod update
を実行すると、あなたのフォークからこの特定のコミットが更新されます。 もし必要なら
podspec
を作ることもできますが、私はこの方法がよりシンプルだと思いますし、新しいワークフローを正当化できるほど頻繁に変更するわけでもありません。
自分のプロジェクトの外でフォークに取り組み、それから変更をインストールするために Cocoapods を使用する必要がありますか?それはあまりにも面倒なワークフローです。
このようにすることもできますが、私は通常。
- プロジェクト内のコードを編集し、動作することを確認します。
-
変更を私のフォークにコピーします。
- パッチをエクスポートするか
- ソース コード ファイル全体をコピーする
- コミットしてGitHubにプッシュする。
- Podfileを新しいSHAで更新する
-
実行
pod update
.
それともサブモジュールで何かする必要があるのでしょうか?
いいえ、その必要はありません。
関連
-
[解決済み] GitHubでフォークされたリポジトリを更新または同期するにはどうすればよいですか?
-
[解決済み] GitHubのREADME.mdに画像を追加する方法とは?
-
[解決済み] GitHub リポジトリにタグを作成する
-
[解決済み] Gitフォークは、実はGitクローンなのか?
-
[解決済み] GitHubからフォークされたレポを削除する
-
[解決済み】Markdownファイル内のGitHub相対リンク
-
[解決済み】他の人のレポからリモートブランチをプルする方法
-
[解決済み] Travis のビルド状況を GitHub リポジトリに表示する
-
[解決済み] target="_blank" を使って github マークダウンでリンクを新しいタブで開く
-
[解決済み] githubでgistの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] github リポジトリのフォークを解除するには?
-
[解決済み] bower の ECMDERR を修正する方法
-
[解決済み] githubの学生アカウントのリポジトリは2年後にどうなりますか?
-
[解決済み] Travis のビルド状況を GitHub リポジトリに表示する
-
[解決済み] target="_blank" を使って github マークダウンでリンクを新しいタブで開く
-
[解決済み] GitHubで「Key is invalid」というメッセージが表示される。
-
[解決済み] githubでgistの名前を変更するには?
-
[解決済み] GitHubのMD markdown readmeに空白を追加するには?
-
[解決済み] index.html を変更した後、GitHub のページに変更が反映されるまでの時間は?
-
[解決済み] 公式githubミラーの作成