Using someone else's repo as a Git Submodule on GitHub

Graham Conzett picture Graham Conzett · Mar 9, 2011 · Viewed 19.9k times · Source

I am trying to find out if it is possible to use someone else's repository (or branch of a repository) as a Submodule in your own Git repository. Documentation on github itself is either missing, or I'm not using the right terminology to look for it. If this isn't the preferred way to go about including a public repository as a shared library within ones git project, suggestions as an alternative best practice would be appreciated.

Answer

Mark Longair picture Mark Longair · Mar 9, 2011

Yes, you can add any repository as a submodule in your project. Just do:

git submodule add git://github.com/whomsoever/whatever.git

... in the top level of your repository. This is indeed the easiest way with git to use some existing useful repository within your own. For more information on submodules, you could look at:

Update: as jfountain points out below, if you want to add the submodule at a subdirectory path (or with a name different from the default) you can supply that as an additional parameter to that command, e.g.:

git submodule add git://github.com/whomsoever/whatever.git foo/bar