Si vous créez un clone du dépôt, vous ne perdez pas vos modifications ni historique Git quand vous fractionnez un dossier en un dépôt distinct.
-
Ouvrez TerminalTerminalGit Bash.
-
Remplacez le répertoire de travail actuel par l’emplacement où vous souhaitez créer votre dépôt.
-
Clonez le dépôt qui contient le sous-dossier.
$ git clone https://HOSTNAME/USERNAME/REPOSITORY-NAME
-
Remplacez le répertoire de travail actuel par votre dépôt cloné.
$ cd REPOSITORY-NAME
-
Pour filtrer le sous-dossier par rapport au reste des fichiers du référentiel, installez
git-filter-repo
, puis exécutezgit filter-repo
avec les arguments suivants.FOLDER-NAME
: dossier dans votre projet dans lequel vous souhaitez créer un dépôt distinct.
Conseil : Les utilisateurs Windows doivent utiliser
/
pour délimiter les dossiers.$ git filter-repo --path FOLDER-NAME/ # Filter the specified branch in your directory and remove empty commits > Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (89/89) > Ref 'refs/heads/BRANCH-NAME' was rewritten
Le dépôt ne doit maintenant contenir que les fichiers qui se trouvaient dans vos sous-dossiers.
-
Créez un dépôt sur GitHub Enterprise Server.
-
En haut de votre nouveau dépôt dans la page Configuration rapide de votre instance GitHub Enterprise Server, cliquez sur pour copier l’URL du dépôt distant.
Conseil : Pour plus d’informations sur la différence entre les URL HTTPS et SSH, consultez « À propos des référentiels distants ».
-
Ajoutez un nouveau nom distant avec l’URL que vous avez copiée pour votre dépôt. Par exemple,
origin
ouupstream
sont deux choix courants.git remote add origin https://HOSTNAME/USERNAME/REPOSITORY-NAME.git
-
Vérifiez que l’URL distante a été ajoutée avec votre nouveau nom de dépôt.
$ git remote -v # Verify new remote URL > origin https://HOSTNAME/USERNAME/NEW-REPOSITORY-NAME.git (fetch) > origin https://HOSTNAME/USERNAME/NEW-REPOSITORY-NAME.git (push)
-
Poussez vos modifications vers le nouveau dépôt sur GitHub Enterprise Server.
git push -u origin BRANCH-NAME