Bien souvent, Git et Ruby on Rails semblent être magiques... comme dans le premier chapitre du livre Ruby on Rails 3 Tutorial, où il est question de Git :
git remote add origin git@github.com:peter/first_app.git
git push origin master
Et cela dit simplement "ça fonctionne" sans trop expliquer ce que sont ces commandes, et commence à parler des branches. En faisant des recherches sur Internet, on trouve que git remote add
sert à ajouter un "nom court", tel que origin
, qui peut être n'importe quel nom, fonctionnant comme un alias vers une URL.
Et origin
est en général le chemin où pointe le dépôt distant (voir http://git-scm.com/book/en/Git-Basics-Working-with-Remotes sous "Adding Remote Repositories").
Alors pourquoi l'URL n'est-elle pas git://git@github.com/peter/first_app.git
, mais dans l'autre syntaxe -- quelle syntaxe est-ce? Pourquoi doit-elle se terminer par .git
? J'ai essayé sans .git
à la fin et ça fonctionne aussi. Si ce n'est pas .git
, ça peut être quoi d'autre? Le git
dans git@github.com
semble être un compte utilisateur sur le serveur Git?
Aussi, pourquoi doit-on être si verbeux en utilisant git push origin master
? Ne pourraient-ils pas être les valeurs par défaut origin et master? J'ai remarqué que la première fois, origin master
est nécessaire, mais après une petite modification et un commit, alors git push
suffit (pas besoin de origin master
). Quelqu'un qui sait ce qui se passe pourrait-il donner des détails?
Parfois cela semble être beaucoup de magie sans explication... et parfois la personne qui l'utilise est tellement confiante que, lorsqu'on lui demande pourquoi, ne peut pas l'expliquer, et répond quelque chose comme "c'est comme ça que ça fonctionne". Parfois très pratique et pragmatique. Ce n'est pas mauvais d'être pratique, mais probablement pas pratique au point de ne pas savoir ce qui se passe.