I want to embed libgit2 in my commercial application (here is license https://github.com/libgit2/libgit2/blob/master/COPYING) . I want to create static libgit2 library, and link it with my commercial application. Is there any restrictions for my app? Something like - should I provide source code by user request? As I understand GPL v2 license states that. But license of libgit2 uses linking exception:


In addition to the permissions in the GNU General Public License, the authors give you unlimited permission to link the compiled version of this library into combinations with other programs, and to distribute those combinations without any restriction coming from the use of this file. (The General Public License restrictions do apply in other respects; for example, they cover modification of the file, and distribution when not linked into a combined executable.)

Can somebody make clear such situation, please? I am not laywer, and that license rules confused me.

  • 3
    Are you asking if you need to supply the source code to libgit2 (i.e. the version you used to build your static library), or are you asking if you need to supply the source code to your closed source code?
    – Brandin
    Jun 17, 2019 at 11:54
  • 1
    @Brandin, I mean source code of my application.
    – LmTinyToon
    Jun 17, 2019 at 13:03

1 Answer 1


I found answer, It turns out I did not complete reading of libgit2 repo README. That's quote from repo (https://github.com/libgit2/libgit2):

libgit2 is under GPL2 with linking exception. This means you can link to and use the library from any program, proprietary or open source; paid or gratis. However, if you modify libgit2 itself, you must distribute the source to your modified version of libgit2.

Your Answer

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