README ajout instructions pour sous-modules
David Valentine

David Valentine commited on 2024-12-07 00:54:12
Showing 1 changed files, with 25 additions and 12 deletions.

... ...
@@ -8,24 +8,37 @@ Plusieurs modifications y sont toutefois appliquées pour répondre à des besoi
8 8
 
9 9
 Tant les tâches de rédaction que les tâches de développement sont suivies avec Git.
10 10
 Le dépôt applique un principe de séparation entre la production des contenus textuels et le développement technique du processeur.
11
-Les tâches de développement sont validées (commitées) directement dans ce dépôt, tandis que l'historique de la rédaction évolue dans un système de sous-modules prévu à cet effet. 
11
+Les tâches de développement sont validées (commited) directement dans ce dépôt, tandis que l'historique de la rédaction évolue dans un système de modules prévu à cet effet.
12 12
 
13
-Pour mettre à jour un sous-module localement (modifié à distance) :
13
+Voir le Pro Git book pour de l'information sur les modules : https://git-scm.com/book/en/v2/Git-Tools-Submodules
14 14
 
15
-- `$ git submodule update --remote <nom-du-dépôt>`
16
-- `$ git add <nom-du-dépôt>`
17
-- `$ git commit -m "update display-ontology submodule"`
15
+## Ajouter un sous-module
18 16
 
19
-Pour mettre à jour un sous-module à distance (modifié localement) : https://stackoverflow.com/a/5814351/16839131
17
+- `$ git submodule add <chemin-vers-le-module> src/<nom-du-module>`
18
+
19
+## Mettre à jour un sous-module localement (modifié à distance)
20
+
21
+- `$ git submodule update --remote src/<nom-du-module>` ou fetch and merge manuel dans le module
22
+- `$ git add src/<nom-du-module>`
23
+- `$ git commit -m "update <nom-du-module> submodule"`
24
+
25
+## Partager les modifications locales du module vers le module à distance
26
+
27
+Info : https://stackoverflow.com/a/5814351/16839131
20 28
 
21 29
 ```bash
22 30
 $ cd your_submodule
23
-$ git checkout master
31
+$ git checkout main
24 32
 <hack,edit>
25
-$ git commit -a -m "commit in submodule"
26
-$ git push
27
-$ cd ..
28
-$ git add your_submodule
29
-$ git commit -m "Updated submodule"
33
+$ git commit ...
30 34
 ```
31 35
 
36
+Pour merger avec les validations distantes :
37
+après avoir checked out sur une branche du module (déjà fait supposément selon l'étape précédente), il faut `$ cd ../../ && git submodule update --remote --rebase` (ou merge).
38
+
39
+Enfin, on peut `git push` directement dans le module pour partager le merge.
40
+
41
+Sinon, on peut push en même temps que le dépôt principal :
42
+d'abord `$ git add your_submodule && git commit -m "Updated submodule`.
43
+
44
+Puis : `$ git push --recurse-submodules=on-demand`
32 45
\ No newline at end of file
33 46