Creating CocoaPod for existing GitHub repo
cocoapods, github, ios
Solution
You now need to use Trunk to upload your spec. Firstly, ensure you have registered a session with Trunk:
pod trunk register [email] [name] --description=[your session description]
- `pod spec create`
- Edit the `SuperAwesomeProject.podspec` file and save. Podspec Syntax Guide
- Run `pod spec lint` and fix any errors it reports.
- Deploy your podspec with `pod trunk push SuperAwesomeProject.podspec`
Much simpler than the old method below!
Note: The information posted below is now outdated.
DO NOT DO THIS. I'm just leaving it here for posterity..
- Visit CocoaPods Specs Repo
- Press Fork and choose your GitHub account.
- Clone your repo using Terminal `git clone git@github.com:github-username/Specs.git`
- `cd Specs && mkdir -p project-name/version-number` e.g. `mkdir -p SuperAwesomeProject/0.0.1`
- `cd SuperAwesomeProject/0.0.1`
- `pod spec create`
- Edit the `SuperAwesomeProject.podspec` file and save. Podspec Syntax Guide
- Run `pod spec lint` and fix any errors it reports.
- If your spec passes linting, add your podspec with `git commit -am "Added SuperAwesomeProject"`
- `git push origin master`
- Visit your GitHub fork page and submit a Pull Request
- Wait for one of the Spec owners to merge your pull request.
If you already have a podspec file, just copy it into the `SuperAwesomeProject/0.0.1` folder and skip step 7.
Problem
Recently I've created small iOS class and I would like to use it with CocoaPods. By now I have added it to the GitHub and I have followed this tutorial which explains the process of creating CocoaPod but I have stuck with this one: "Adding the Podspec to the CocoaPods Specs Repo". Can someone explain following steps, like how to fork the repository and issue a pull request. I know there are a lot of similar answers on Google but I would be very appreciative if someone can share it's experience with creating CocoaPods. Also is there an option for checking what will be final result when I add pod to my project before I make it public?