If you want to start help developing OpenCloud please follow these instructions:
NOTE: To compile the code you need Xcode 10.2, iOS11, cocoa pods and swiftlint.
- Navigate to https://github.com/opencloud-eu/ios, click fork.
- Clone your new repo:
git clone git@github.com:YOURGITHUBNAME/ios.git - Move to the project folder with
cd ios - Checkout remote develop branch:
git checkout -b main remotes/origin/main - Pull changes from your develop branch:
git pull origin main - Make official OpenCloud repo known as upstream:
git remote add upstream git@github.com:opencloud-eu/ios.git - Make sure to get the latest changes from official ios/main branch:
git pull upstream main
NOTE: This will connect with our OpenCloud iOS Library repository at https://github.com/opencloud-eu/ios-sdk.
- Inside the folder ios:
- Init the library submodule:
git submodule init - Update the library submodule:
git submodule update
- Init the library submodule:
Install cocapods:
brew install cocoapods
NOTE: You must use the same "extension" on the certificates of the extensions (OpenCloudExtApp, OpenCloudExtAppFileProvider, OC-Share-Sheet)
- Login at https://developer.apple.com/ as developer and there to the Certificates section.
- Create a Development Certificate for you (probably you got it one now)
- Create an App Id for the main app. Ex: com.mywebpage.opencloud.ios
- Create an AppGroup and add it too all the App Id. Must have the App Id than the main app but with the group. Ex: group.com.mywebpage.opencloud.ios
- Add the UDID of your device on the Devices section.
- Create 5 Development Profiles. One for each App Id.
NOTE: You must contribute your code under the MIT license before your changes can be accepted! See the iOS license exception for testing the OpenCloud iOS app on Apple hardware.
-
Remove your own App Id from the project and set again the OpenCloud ones:
- Main app: eu.opencloud.ios
-
Commit your changes locally:
git commit -a -
Push your changes to your Github repo:
git push -
Browse to
https://github.com/YOURGITHUBNAME/ios/pullsand issue pull request -
Click "Edit" and set "base:main"
-
Again, click "Edit" and set "compare:main"
-
Enter description and send pull request.
To make sure your new pull request does not contain commits which are already contained in previous PRs, create a new branch which is a clone of upstream/main.
git fetch upstreamgit checkout -b my_new_main_branch upstream/main- If you want to rename that branch later:
git checkout -b my_new_main_branch_with_new_name - Push branch to server:
git push -u origin name_of_local_main_branch - Use GitHub to create a pull request
Please submit translations via Transifex.