I am about to start developing an iOS app which will be published on Apple App Store.

While developing this app, I am thinking to push all the code to GitHub public repository; pull requests from open-source contributors will or will not be taken.
Even if it's going to be public then still I want to keep all the copyrights of that code to be with me.

Is it doable/allowed?
If yes, which license should I use for code on GitHub?

Note: I am aware that GPL's v3 is not compatible with App Store.

  • What do you mean exactly by this "Even if it's going to be public then still I want to keep all the copyrights of that code to be with me"?
    – Zimm i48
    Jun 26, 2017 at 13:35
  • Even if I am going to publish my code on GitHub public repo and anyone can use it for their use, I should be able to claim my ownership over that code.
    – D4ttatraya
    Jun 26, 2017 at 15:42
  • Still not clear. What kind of thing are you trying to prevent?
    – Zimm i48
    Jun 26, 2017 at 16:34
  • 1
    Not preventing anything, just for showcasing this repo in my profile. But I think I don't have to worry abt my ownership while mentioning this repo in my profile.
    – D4ttatraya
    Jun 27, 2017 at 15:07
  • If you don’t need contribution from others (enough for showcase), just don’t pick a license. Jan 15, 2019 at 2:45

2 Answers 2


The MIT license is a default choice for many projects, and it allows you to retain copyright. In fact, most open source licenses do. Only public domain licenses such as CC0 or Unlicense release your copyright.

GitHub has created a website to help people choose a license. You might find it helpful.

  • 1
    +1, but if pull requests from other contributors are accepted, then those contributors also maintain the copyright to their changes – the result being an app with shared copyright. To prevent this, the contributors would have to sign an appropriate contributor license agreement or a copyright transfer agreement.
    – amon
    Jun 25, 2017 at 9:08
  • @amon which one you are talking about? MIT or GPL? Or in both cases?
    – D4ttatraya
    Jun 25, 2017 at 11:28
  • 1
    @DashAndRest All licenses. By default, everyone keeps their own copyright. If a contributor gives you some modifications under a license, you are also bound by that license. A CLA (contributor license agreement) means that contributors give you a more flexible license than to the public. This is needed for “dual-licensed” software. A copyright transfer agreement is like a CLA but would literally assign the complete copyright to you, but this requires more paperwork. If you want to keep complete copyright without a CLA, then you can't accept any pull requests.
    – amon
    Jun 25, 2017 at 11:43
  • Does not address the OPs question on the whole. Furthermore, suggesting a license because it's "a default choice for many projects" is argumentum ad populum and, therefore, irrelevant.
    – vhs
    Nov 16, 2019 at 4:45

If there's nothing otherwise prohibiting you, you may publish your app code to a public git repository under any license you choose and even with no accompanying license at all. With regard to copyright it depends on applicable laws. In the United States, for example, copyright is automatic and a transfer of that copyright cannot be executed without a written and signed instrument.

If you choose GPL, you can be reasonably sure your code will not make its way into another App Store app due to Apple's App Store app licensing requirements and you (as well as others) will have the opportunity to view contributions back to your app in forks or copies of the source.

If you choose the Expat license, you may not know when someone uses your code in another App Store app as there's no requirement to reproduce the license in object form.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.