Salut,
J’ai fait le tour du tutoriel que j’ai trouvé pas mal, en plus c’est écrit par deux Pikachu !
Dans la suite du message je reporte les différentes remarques que j’ai pu me faire selon les chapitres.
J’ai aussi relevé des petites fautes d’orthographe dont je fournis une liste par chapitre.
Installation et initialisation de votre premier dépôt
Au long du tutoriel on comprend que git va permettre de travailler à plusieurs, mais comment concrètement ? Quel est le but ?
Qu’est-ce qui va faire qu’il sera plus facile de travailler à plusieurs sans se marcher dessus ?
Aussi est-ce que vous pourriez présenter les pré-requis nécessaires pour suivre le cours ? Je pense notamment au shell Linux.
Historique
Je trouve la phrase sur Linux assez ambiguë (« Si vous vous intéressez à Git, vous connaissez surement Linux. Son développement est assuré par toute une équipe, et n’importe qui peut proposer des patchs. »).
Après l’avoir lue je n’ai pas compris que vous parliez du code de Linux et pas de celui de git.
Peut-être qu’il serait aussi préférable d’utiliser un terme plus générique que « mailing list » qui ne sera pas forcément compris de tout le monde.
Je n’ai pas trouvé très logique de faire configurer le nom / email avant même de créer un premier dépôt ou un premier commit, ça a l’air de sortir de nulle part.
À ce moment-là la configuration est globale, mais il ne serait de toute façon pas possible de faire une configuration locale car aucun dépôt n’existe.
Initialisation de votre premier dépôt
Je ne suis pas très sûr que ce soit le lieu pour parler de vim, un autre éditeur ne pourrait pas être utilisé dans git bash ?
En plus, comme relevé par @Migwel, vous configurez nano comme éditeur par défaut juste avant.
Et je rejoins @sgble sur le fait que ce serait cool de montrer commit -m
tout de suite.
Vous pouvez à tout moment voir l’état actuel de votre dépôt
Qu’est-ce que l’état d’un dépôt ? Je pense que des explications seraient bienvenues.
Corrections orthographiques
- « vous récupére
rz »
- « et refaites »
- « ils ont décidé
s »
- « ils ont d’abord décidé
s »
- « BitKeeper finit par »
- « les mêmes principes »
- « un des principaux systèmes »
- « ouvrez […], puis tape
rz »
- « deux commandes essentielles »
- « seront donc bien évidemment différents »
Une histoire de commit
Je trouve encore une fois que ça manque de concret.
On crée des commits qui ne contiennent pas grand chose, dans des fichiers un peu inutiles.
Mais ça ne répond pas vraiment à la question de fond : à quoi ça sert un commit ?
Un commit
Vous nommez le premier commit 7a7c
.
C’est une notation valable mais est-ce que ce serait pas mieux d’utiliser les 8 premiers caractères du hash plutôt que seulement 4, pour rejoindre la notation généralement utilisée ?
Des commits
Rien à redire si ce n’est que vivement l’arrivée des schémas !
Soyons fainéants
J’aurais pensé que la section parlerait de git diff --staged
pour bien illustrer les différentes zones.
Retrouvons Coco
On voit apparaître un tag Coco2
dans les logs git, c’est une erreur suite à un renommage ?
Corrections orthographiques
- « toutes les modifications »
- « ce que renvoi
te »
- « Chaque ligne précédée »
- « Le reste concerne le fichier concerné » → répétition
- « les fichiers modifiés »
- « les fichiers ajoutés (on dit aussi indexés) »
- « tou
ts les fichiers »
- « les fichiers nouvellement créés (tels que »
- « ne faisant pas parti
se »
- « valide ses changements » → et peut-être « ces »
- « bien s
uûr »
- « Les derniers commits sont affichés »
- « Il est effectivement plus utile
s »
- « quinze commits différents »
- « de notre dépôt
s »
- « sont très pratiques »
Un peu de jardinage
Une nouvelle amitié qui commence
Les concepts de file et de bifurcation sont entremêlés dans l’introduction, on ne comprend pas nécessairement bien qu’un commit puisse apparaître dans deux files (branches) ni que des branches peuvent bifurquer puis se rejoindre (impossible avec des files).
Je pense aussi qu’il serait bon de présenter git switch
comme alternative au checkout
.
Les blocs de code sont un peu trop compacts et donc difficiles à suivre, peut-être faudrait-il les séparer en plusieurs blocs ?
Ça permettrait d’ajouter quelques commentaires au passage.
L’email n’est pas masqué dans tous les exemples.
Certaines images ont des problèmes de résolution pour les pancartes des branches ce qui les rend difficiles à lire.
Fuuuuuuu-sion !
La section ne précise pas que deux branches peuvent modifier un même fichier sans que cela ne mène à des conflits, si les lignes impactées sont suffisamment distinctes pour que git s’y retrouve (et donc que c’est géré par la fusion automatique).
Le code sur le rebase est difficile à suivre, on voit les commandes sans comprendre ce que vous voulez faire, le rebasage n’est pas vraiment expliqué.
Ça mériterait peut-être une section à part, et je pense que les schémas gagneraient à être présentés avant le code pour expliciter ce qui va être fait. Et des schémas étape par étape permettrait de découper et aérer les blocs de code.
Le super-héro de Git
On voit ^
et ~
utilisés mais pas vraiment expliqués, le seront-ils par la suite pour présenter leurs différentes possibilités ?
Corrections orthographiques
- « Une branche
àa toujours un nom »
- « les autres utilisateurs du dépôt travaillent »
- « la fonctionnalité terminée »
- « Comment allons nous fusionner
sces branches ? »
Retour vers le futur
Récupérer un fichier
On ne comprend pas forcément le checkout, il n’est pas dit d’où le fichier est récupéré, et que les modifications non validées sont effacées.
Les univers parallèles
Encore une fois difficile à suivre sans exemples concrets.
Est-ce qu’il ne pourrait pas y avoir un petit projet plus réaliste pour décrire les étapes ?
Par exemple vous pourriez présenter le git correspondant à la rédaction d’un contenu sur ZdS.
Remise à zéro
Peut-être qu’il faudrait montrer des exemples d’utilisation où l’on revient sur des commits particuliers plutôt que sur HEAD.
Et présenter quelques cas d’usage où reset pourrait être utile.
git reflog
Le cas d’usage est pertinent, peut-être qu’il faudrait juste remplacer [COMMIT]
par l’id du commit dans l’exemple pour bien montrer ce qu’on souhaitait retrouver et où est écrite l’info dans le résultat de la commande.
Corrections orthographiques
- « les modifications effectuées »
- « n’importe quel
le fichier »
- « c’est quand m
eême fatiguant de récupérer tout ses fichiers » → et peut-être « ces » à la place de « ses »
- « tou
ts les fichiers d’un commit »
- « ce qui nous permet
s »
L’attaque des clones
Échange de données
Ça manque un peu d’explications autour de l’option -a
de git branch
.
Clonage
Je trouve que le git clone
arrive tard dans le processus.
Un dépôt d’exemple pourrait être fourni, à cloner dès le début du tutoriel : c’est plus comme ça que ça se passe en vrai que par un git init
.
Corrections orthographiques
- « vous le faites »
- « manière décentralisée »
- « l’authentification pouvant être facilitée »
- « les dépôts distants »
- « l’envoi
se »
- « À note
zr »
- « entre les branches locales et distantes »
- « une branche
s »
- « la copie locale »
- « Il faut pense
zr »
- « beaucoup de choses »
Voilà pour moi !