Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| dev:git:gerer-zone-index [2019/04/25 21:00] – yoann | dev:git:gerer-zone-index [2024/11/19 14:56] (Version actuelle) – yoann | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag> | + | {{tag> |
| ====== Gestion de la zone d' | ====== Gestion de la zone d' | ||
| Ligne 7: | Ligne 7: | ||
| Worflow: | Worflow: | ||
| - Modifier les fichiers dans le répertoire de travail | - Modifier les fichiers dans le répertoire de travail | ||
| - | - Placer dans l' | + | - Placer dans l' |
| - Faire le commit | - Faire le commit | ||
| + | |||
| + | Pour illustrer les commandes, un dépôt avec le contenu suivant est créé: | ||
| + | < | ||
| + | / | ||
| + | ├── readme.txt | ||
| + | └── src | ||
| + | ├── A.c | ||
| + | ├── B.c | ||
| + | └── C.c | ||
| + | </ | ||
| ===== État de la zone d' | ===== État de la zone d' | ||
| - | la commande **git status** permet de voir le contenu de la zone d' | + | La commande **git status** permet de voir le contenu de la zone d' |
| - | < | + | < |
| $ git status -s | $ git status -s | ||
| + | ?? readme.txt | ||
| + | ?? src/ | ||
| </ | </ | ||
| + | |||
| + | Les points d' | ||
| + | |||
| + | ===== Ajouter à l' | ||
| + | |||
| + | L' | ||
| + | |||
| + | ==== Ajouter un dossier ==== | ||
| + | |||
| + | Ajouter un dossier dans l' | ||
| + | |||
| + | <code bash> | ||
| + | # Ajoute le dossier src à l' | ||
| + | git add src/ | ||
| + | |||
| + | # Le listing du contenu de l' | ||
| + | # retourne le dossier et tout son contenu | ||
| + | git st | ||
| + | A src/A.c | ||
| + | A src/B.c | ||
| + | A src/C.c | ||
| + | ?? readme.tx | ||
| + | </ | ||
| + | |||
| + | Ici, le ' | ||
| + | |||
| + | ==== Mettre à jour les fichiers suivis ==== | ||
| + | |||
| + | Pour n' | ||
| + | <code bash> | ||
| + | $ git add -u | ||
| + | </ | ||
| + | |||
| + | Ajouter à l' | ||
| + | <code bash> | ||
| + | $ git add . | ||
| + | $ git st | ||
| + | A readme.txt | ||
| + | A src/A.c | ||
| + | A src/B.c | ||
| + | A src/C.c | ||
| + | </ | ||
| + | |||
| + | ==== N' | ||
| + | |||
| + | Lorsque des modifications sont apportées à plusieurs endroits dans un même fichier, on peut vouloir pousser dans l' | ||
| + | |||
| + | C'est ce que permet de faire l' | ||
| + | |||
| + | <code bash> | ||
| + | # Plusieurs modifications ont été apportées en même temps | ||
| + | # au fichiers " | ||
| + | # sous partie pour le prochain commit | ||
| + | |||
| + | git add --patch fairymaps/ | ||
| + | </ | ||
| + | |||
| + | La commande bascule en mode interactif, pour chaque section modifiée git demande à l' | ||
| + | |||
| + | < | ||
| + | (1/1) Indexer cette section [y, | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | y - indexer cette section | ||
| + | n - ne pas indexer cette section | ||
| + | q - quitter ; ne pas indexer cette section ni les autres restantes | ||
| + | a - indexer cette section et toutes les suivantes de ce fichier | ||
| + | d - ne pas indexer cette section ni les suivantes de ce fichier | ||
| + | s - découper la section en sections plus petites | ||
| + | e - éditer manuellement la section actuelle | ||
| + | ? - afficher l'aide | ||
| + | </ | ||
| + | |||
| + | Via le mode interactif, l' | ||
| + | |||
| + | |||
| + | ===== Ignorer des fichiers ===== | ||
| + | |||
| + | Les fichiers .gitignore permettent de définir des patterns d' | ||
| + | |||
| + | <code bash> | ||
| + | $ git add -f ./build/A.o | ||
| + | </ | ||
| + | |||
| + | |||
| + | Il peut y avoir de multiples fichiers .gitignore dans répertoire du projet. Pour tester si un fichier est bien exclus: | ||
| + | |||
| + | <code bash> | ||
| + | $ git check-ignore -v build/B.o | ||
| + | .gitignore: | ||
| + | </ | ||
| + | |||
| + | Dans cet exemple la commande retourne que le fichier " | ||
| ===== Retirer des fichier de l' | ===== Retirer des fichier de l' | ||