Vu l'importance que prend de plus en pus l'outil Git, dans le nouvel écosystème des développeurs, nous souhaitons voir une section dédiée à Git dans la FAQ SCM.
Marco propose le plan ci-dessous, qui est déjà très intéressant.
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | 7. GIT 7.1 Généralités - Qu'est ce que GIT ? - Que signifie GIT ? - Où trouver de la documentation pour GIT ? - Où trouver le code source de GIT ? - Quelles sont les différences entre un SCM centralisé comme Subversion et un SCM décentralisé comme GIT ? - Qu'est-ce qu'un repository GIT ? - Qu'est-ce qu'un remote ? - Que désignent les termes upstream et downstream ? 7.2 Installation et configuration - Comment installer GIT sur Windows ? - Comment connaitre la liste des commandes GIT ? - Comment connaitre la version de votre GIT ? - Quels sont les fichiers de configuration de GIT ? - Comment afficher la configuration courante de GIT ? - Comment exclure des fichiers ? - Comment changer son nom d'utilisateur ? - Comment changer son email ? - Comment changer la push url ? 7.3 Utilisation 7.3.1 Initialisation d'un repository - Comment initialiser un repository - Comment initialiser un bare repository - Comment cloner un repository - Comment connaitre l'état du repository 7.3.2 Les remotes - Comment lister les remotes d'un repository ? - Comment ajouter un remote ? - Comment inspecter un remote ? - Comment supprimer un remote ? - Comment renommer un remote ? - Comment mettre à jour la représentation locale d'un remote ? (fetch) - Comment mettre à jour une branche locale avec une branche distance ? - Comment mettre à jour un remote ? (push) 7.3.3 La working directory - Qu'est-ce que la working directory ? - Comment changer l'état de la working directory ? 7.3.4 La zone de stagging - Qu'est ce que la zone de stagging ? - Comment ajouter un fichier à la zone de stagging ? - Comment retirer un fichier de la zone de stagging ? 7.3.5 Les commits - Qu'est ce qu'un commit ? - Comment créer un commit ? - Comment ajouter un message en créant un commit ? - Comment modifier le message d'un commit existant ? - Comment supprimer le dernier commit de la branche courante sans perdre les modifications ? - Comment supprimer le dernier commit de la branche courante avec les modifications ? - Comment supprimer les "n" derniers commits de la branche courante sans perdre les modifications ? - Comment supprimer les "n" derniers commits de la branche courante avec les modifications ? - Comment ajouter un commit d'une branche A dans une branche B sans effectuer un merge ? (cherry-pick) - Comment annuler un commit existant ? (revert) 7.3.6 Les branches - Qu'est-ce qu'une branche ? - Comment lister les branches locales ? - Comment créer une branche ? - Comment supprimer une branche ? - Comment renommer une branche ? - Comment comparer deux branches ? - Comment comparer l'état d'un fichier présent dans deux branches ? 7.3.7 Les fusions de branches (merge) - Qu'est-ce qu'un merge ? - Comment merger une branche A dans une branche B ? - Comment annuler un merge en cours ? - Comment rollback un merge terminé ? - Qu'est-ce qu'un conflit ? - Comment gérer un conflit ? 7.3.8 Réécriture de l'historique (rebase) - Qu'est-ce qu'un rebase ? - Qu'est-ce qu'un rebase intéractif ? - Pourquoi effectuer un rebase ? - Pourquoi effectuer un rebase intéractif ? - Comment annuler un rebase en cours ? 7.3.9 Les tags - Qu'est-ce qu'un tag ? - Comment créer une tag ? - Comment supprimer une tag ? - Comment renommer une tag ? - Comment lister les tags existants ? - Comment comparer deux tags ? - Comment comparer l'état d'un fichier présent dans deux tags ? 7.3.10 Les logs - Qu'est-ce que le log ? - Comment afficher le log ? - Comment afficher le log sous forme graphique dans la console ? - Comment afficher le log sur une seule ligne pour chaque commit ? - Comment afficher un changelog entre deux tags ? - Comment filtrer le log sur la base des messages de commit ? - Comment filtrer le log sur la base de l'auteur des commits ? - Comment afficher la liste des fichiers modifiés pour chaque commit du log ? - Comment trouver qui a modifié quelle ligne dans un fichier donné ? (blame) 7.4 Outils - github - gitlab - qu'elle est la différence entre une pull request (github) et une merge request (gitlab) ? |