Ich wollte ein großes (teilweise geschlossenes) git-Repo in kleinere (teils öffentliche) git-Repos aufteilen.
Hier meine Anleitung
Unterverzeichnisse eines Git-Repositories in ein neues Repository auslagern
- Kopiere das Original Repository
cp ~/orig-Repo ~/new-Repo
- Wechsle in die Kopie
cd ~/new-Repo
- Dateien ausfiltern
git filter-branch --prune-empty --subdirectory-filter Verzeichnis-Name Branch-Name
Verzeichnis-Name
: Das Verzeichnis, das das Neue Repo beinhalten sollBranch-Name
: Der zukünftige Branche-Name (z. B. master)
- neues Remote-Repo erstellen
- neues Remote-Repo bekannt geben
git remote set-url origin https://<GIT-SERVER-TLD>/<USERNAME>/<NEW-REPOSITORY-NAME>.git
- neuen Pfad des Remote-Repo's prüfen
git remote -v
- neues Repot zum neuen Remote-Repo pushen
git push -u origin Branch-Name
Diskussion