github linking with other repos

I have a project that relies on two repos in github to function. When I submit my project to github how do I link to these two repos? Should I duplicate the files in my own repo or link to the other repo at a specific revision as I don't want it to update and cause incompatibility. I already created my github repo what should I do?


You can use git submodules to "link" to other projects. See here - http://help.github.com/submodules/


GitHub will also allow you to reference another repository in a comment on GitHub or in a commit. For example:

We should probably handle this with github/enterprise#59

This will add an update to the issue github/enterprise#59 with a link to your comment/commit.

Cross-Repository Issue References

enter image description here

Sure, GitHub's all about social coding, but you can have social repositories, too. You can reference issues between repositories by mentioning user/repository#number in an issue. Once we see something like that — say, github/enterprise#59 — we'll make sure to update issue #59 in github's enterprise repository and let you know where it was referenced from. This is a part of GitHub Flavored Markdown, which also has a few tricks of its own.

Read more: https://github.com/blog/967-github-secrets


There is an alternative to submodules that I found out to be more practical: subtree.

According to this link the advantages are:

  • Management of a simple workflow is easy.
  • Older version of git are supported (even before v1.5.2).
  • The sub-project’s code is available right after the clone of the super project is done.
  • subtree does not require users of your repository to learn anything new, they can ignore the fact that you are using subtree to manage dependencies.
  • subtree does not add new metadata files like submodules doe (i.e. .gitmodule).
  • Contents of the module can be modified without having a separate repository copy of the dependency somewhere else.