Zuletzt aktiv 1750701260

Scinder un dépôt git en deux Orginalformat
1# Scinder un dépôt en deux dépôts distincts
2
3## Nomenclature
4
5+ OLD_REPO : nom de l'ancien dépôt à scinder
6+ NEW_REPO_1 : nom du nouveau premier dépôt
7+ NEW_REPO_2 : nom du nouveau second dépôt
8+ OLD_REPO_DIR_1 : nom du dossier qui deviendra NEW_REPO_1
9+ OLD_REPO_DIR_2 : nom du dossier qui deviendra NEW_REPO_2
10+ TEMP_BRANCH_1 : nom de la branche temporaire de OLD_REPO dans laquelle on va "cloner" OLD_REPO_DIR_1
11+ TEMP_BRANCH_2 : nom de la branche temporaire de OLD_REPO dans laquelle on va "cloner" OLD_REPO_DIR_2
12
13## Préparer l'ancien dépôt
14
15$ git clone <url/git/vers/OLD_REPO.git>
16$ git subtree split --prefix OLD_REPO_DIR_1 -b TEMP_BRANCH_1
17$ git subtree split --prefix OLD_REPO_DIR_2 -b TEMP_BRANCH_2
18
19## Préparer les futurs dépôts
20
21Sur le serveur git créer les futurs dépôts NEW_REPO_1 et NEW_REPO_2.
22
23## Initialiser les futurs dépôts
24
25$ mkdir <chemin/vers/NEW_REPO_1>
26$ cd <chemin/vers/NEW_REPO_1>
27$ git init --initial-branch=main
28$ git pull <chemin/vers/OLD_REPO> TEMP_BRANCH_1
29$ git remote add origin <url/git/vers/NEW_REPO_1>
30$ mkdir <chemin/vers/NEW_REPO_2>
31$ cd <chemin/vers/NEW_REPO_2>
32$ git init --initial-branch=main
33$ git pull <chemin/vers/OLD_REPO> TEMP_BRANCH_2
34
35## Mettre à jour les dépôts git distants
36
37$ cd <chemin/vers/NEW_REPO_1>
38$ git remote add origin <url/git/vers/NEW_REPO_1>
39$ git push --set-upstream origin --all
40$ git push --set-upstream origin --tags
41
42$ cd <chemin/vers/NEW_REPO_2>
43$ git remote add origin <url/git/vers/NEW_REPO_2>
44$ git push --set-upstream origin --all
45$ git push --set-upstream origin --tags
46
47## Nettoyer l'ancien dépôt
48
49$ cd <chemin/vers/OLD_REPO>
50$ git branch -D TEMP_BRANCH_1
51$ git branch -D TEMP_BRANCH_2
52
53