Use a fork of Restkit on github via CocoaPods?

我们两清 提交于 2019-11-28 15:48:38

问题


restkit is using in a different way the oauth2 protocol, I need to change the code to be able to use it in my way:

From:

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

to:

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

Use of "Bearer" instead of "Oauth2" ....

I'm using CocoaPods to import restkit in my project.

Can I fork Restkit repository on github and use the fork via CocoaPod instead of the official version?


回答1:


You certainly can. Take a look at https://github.com/CocoaPods/CocoaPods/wiki/Dependency-declaration-options

If RestKit included its .podspec file in the repository then you could just change your Podfile to point to your fork i.e.

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

Unfortunately RestKit does not include its .podspec. Instead copy RestKit.podspec from https://github.com/CocoaPods/Specs/blob/master/RestKit/0.10.2/RestKit.podspec and add it to your project. Edit the .podspec to use your fork as its source. You can then specify a local .podspec in your Podfile:

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

Alternately you might just add this .podspec to your fork and use the former dependency declaration.




回答2:


Even though this question has an accepted answer, I wanted to add an alternative approach. At some time (I believe after this question was asked) the ability to have local references in Podfiles (and not just Podspecs) was added to Cocoapods.

Rather than creating custom creating public forks in Github and custom Podspecs, I find it easier to:

  1. Clone the Github library locally.
  2. Create a new local branch where I make the changes that I need in that library that are specific to my project.
  3. Modify my Podfile to point to that local directory and local branch:

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

This makes it easy for me to incorporate any new versions of the library (by just pulling them from origin and then merging them into my local branch).



来源:https://stackoverflow.com/questions/12393470/use-a-fork-of-restkit-on-github-via-cocoapods

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!