簡體   English   中英

通過CocoaPods在github上使用Restkit的fork?

[英]Use a fork of Restkit on github via CocoaPods?

restkit以不同的方式使用oauth2協議,我需要更改代碼以便能夠以我的方式使用它:

從:

// OAuth 2 valid request
if (self.authenticationType == RKRequestAuthenticationTypeOAuth2) {
    NSString *authorizationString = [NSString stringWithFormat:@"OAuth2 %@", self.OAuth2AccessToken];
    [_URLRequest setValue:authorizationString forHTTPHeaderField:@"Authorization"];
}

至:

// OAuth 2 valid request
if (self.authenticationType == RKRequestAuthenticationTypeOAuth2) {
    NSString *authorizationString = [NSString stringWithFormat:@"Bearer %@", self.OAuth2AccessToken];
    [_URLRequest setValue:authorizationString forHTTPHeaderField:@"Authorization"];
}

使用“Bearer”而不是“Oauth2”....

我正在使用CocoaPods在我的項目中導入restkit。

我可以在github上分叉Restkit存儲庫並通過CocoaPod而不是官方版本使用fork嗎?

你當然可以。 看看https://github.com/CocoaPods/CocoaPods/wiki/Dependency-declaration-options

如果RestKit將其.podspec文件包含在存儲庫中,那么您可以將Podfile更改為指向您的分叉即

pod 'RestKit', :git => 'https://github.com/you/RestKit.git'

不幸的是RestKit不包括它的.podspec 而是從https://github.com/CocoaPods/Specs/blob/master/RestKit/0.10.2/RestKit.podspec復制RestKit.podspec並將其添加到您的項目中。 編輯.podspec以使用fork作為其源。 然后,您可以在.podspec中指定本地Podfile

pod 'RestKit', :podspec => 'local/path/to/RestKit.podspec'

或者,您可以將此.podspec添加到您的fork並使用以前的依賴項聲明。

即使這個問題有一個公認的答案,我想添加一個替代方法。 在某個時候(我相信在提出這個問題之后),在Podfiles(而不僅僅是Podspecs)中添加本地引用的能力被添加到Cocoapods。

我沒有在Github和自定義Podspecs中創建自定義創建公共分叉,而是更容易:

  1. 在本地克隆Github庫。
  2. 創建一個新的本地分支,我在該庫中進行特定於我的項目所需的更改。
  3. 修改我的Podfile以指向該本地目錄和本地分支:

     pod 'FXForms', :path => '~/Documents/Projects/RestKit', :branch => 'mybranch' 

這使我很容易合並庫的任何新版本(只需從原點拉出它們然后將它們合並到我的本地分支中)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM