Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save channgo2203/389eaa957048c8eb069c3aa5fa3b9b4e to your computer and use it in GitHub Desktop.
Save channgo2203/389eaa957048c8eb069c3aa5fa3b9b4e to your computer and use it in GitHub Desktop.
Merge one git repository into another repository as a sub-directory
# based on the following:
# http://saintgimp.org/2013/01/22/merging-two-git-repositories-into-one-repository-without-losing-file-history/
# http://blog.caplin.com/2013/09/18/merging-two-git-repositories/
git clone repo_main
git clone repo_sub
cd repo_main
git remote add repo_sub ../repo_sub
git fetch repo_sub
git checkout -b repo_sub repo_sub/master
mkdir dir_repo_sub
# '*' will cause git mv to fail because it cannot move dir_repo_sub into itself
git mv <list all files>
git commit -m"Moves all repo_sub files into a single directory for merging back into repo_main"
git checkout master
git merge repo_sub
# commit and push, and you're finished
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment