diff options
author | polo-pc-greta <ordipolo@gmx.fr> | 2025-02-08 10:29:34 +0100 |
---|---|---|
committer | polo-pc-greta <ordipolo@gmx.fr> | 2025-02-08 10:29:34 +0100 |
commit | 7b1856aeffd3118687fb08a20c762430a1f47ccc (patch) | |
tree | ed5f65bdc5537e3043f4148bf98204bad4609cb9 /TP GIT 3 fusion.txt | |
parent | 764520f0cd1f648e4015ab738ac378b7f775fe3b (diff) | |
download | tp-git-7b1856aeffd3118687fb08a20c762430a1f47ccc.zip |
fichier TP GIT 3
Diffstat (limited to 'TP GIT 3 fusion.txt')
-rw-r--r-- | TP GIT 3 fusion.txt | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/TP GIT 3 fusion.txt b/TP GIT 3 fusion.txt new file mode 100644 index 0000000..0a77322 --- /dev/null +++ b/TP GIT 3 fusion.txt | |||
@@ -0,0 +1,57 @@ | |||
1 | PARTIE 3 branche et fusion | ||
2 | |||
3 | "git pull" est en fait la combinaison de deux commandes "fetch" et "merge" | ||
4 | |||
5 | obtenir les modifications du dépôt distant sans mettre à jour le dépôt local | ||
6 | git fetch | ||
7 | |||
8 | fusionner ces modifications avec le dépôt local | ||
9 | des conflits peuvent se produire si deux personnes ont touché au même fichier | ||
10 | git merge | ||
11 | |||
12 | note: lorsqu'on crée une branche on doit dire à git de quelle branche distante elle dérive | ||
13 | doit être fait une fois par nouvelle branche | ||
14 | git push --set-upstream | ||
15 | |||
16 | note: un git merge réussit équivaut à un commit | ||
17 | on peut aussi merge sans commit (pour changer d'autres truc avant de commit) | ||
18 | git merge --no-commit | ||
19 | |||
20 | |||
21 | on va créer des branche et provoquer un conflit pour voir ce qu'il se passe | ||
22 | - add, commit, push un dépôt un fichier avec les paroles d'une chanson | ||
23 | - créer une branche "branche1" | ||
24 | git checkout -b "branche1" | ||
25 | - modifier le ficher, add, commit, et push comme ci-dessous | ||
26 | git push --set-upstream origin branche1 | ||
27 | - revenir à la branche "master" | ||
28 | git checkout master | ||
29 | - créer une branche 2 | ||
30 | git checkout -b "branche2" | ||
31 | - modifier le ficher, add, commit et push | ||
32 | git push --set-upstream origin branche2 | ||
33 | - revenir à la branche "master" | ||
34 | git checkout master | ||
35 | - fusionner la branche 1 dans master (c'est là qu'on est) | ||
36 | git merge branche1 | ||
37 | - fusionner la branche 2 dans master | ||
38 | git merge branche2 | ||
39 | |||
40 | une erreur apparaît à cause du conflit lors de la fusion de la branche 2 | ||
41 | un conflit dans le fichier en question ne permet pas la fusion automatique | ||
42 | git status montre des commandes possibles | ||
43 | pour résoudre le problème: | ||
44 | |||
45 | - méthode 1: éditer les fichiers et retenter une fusion | ||
46 | - les fichiers à éditer sont ceux de la branche dans laquelle on fusionne (ici master) | ||
47 | - après un git add, un git status indique si le conflit est résolu | ||
48 | et nous rappelle qu'une fusion est toujours en court | ||
49 | add, commit, push | ||
50 | |||
51 | - méthode 2: abandonner la fusion | ||
52 | git merge --abort | ||
53 | |||
54 | |||
55 | éventuellement, pour supprimer une branche | ||
56 | git branch -d | ||
57 | git branch -D ajoute le paramètre --force | ||