通过cocoaPod在github上使用Restkit的分叉?

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”….

我正在使用coacoaPod在我的项目中导入restkit。

我可以在github上分叉Restkit仓库,并通过CocoaPod而不是正式版本使用fork吗?

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

如果RestKit包含在存储库中的.podspec文件,那么你可以改变你的Podfile指向你的叉即ie

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

不幸的是RestKit不包括它的.podspecRestKit.podspechttps://github.com/CocoaPods/Specs/blob/master/RestKit/0.10.2/RestKit.podspec复制RestKit.podspec并将其添加到您的项目中。 编辑.podspec以使用叉子作为其源。 然后,您可以在.podspec中指定一个本地Podfile

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

或者,您可以将此.podspec添加到您的分支并使用以前的依赖声明。

即使这个问题有一个可以接受的答案,但我想增加一个替代方法。 在某个时候(我相信这个问题之后被问到),在Podfiles(而不是Podspecs)中引入本地引用的能力被添加到Cocoapods中。

而不是在Github和自定义Podspecs中创build自定义公共分支,我发现它更容易:

  1. 在本地克隆Github库。
  2. 创build一个新的本地分支,我在该库中进行特定于我的项目的更改。
  3. 修改我的Podfile指向本地目录和本地分支:

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

这使得我可以很容易地将任何新版本的库(通过从原点拉出来,然后合并到我的本地分支)。