J'ai lu un tas de questions sur les outils de contrôle de code source simples et Git semblait être un choix raisonnable. Je l'ai opérationnel, et cela fonctionne bien jusqu'à présent. Un aspect que j'aime chez CVS est l'incrémentation automatique d'un numéro de version.
Je comprends que cela a moins de sens dans un référentiel distribué, mais en tant que développeur, je veux / ai besoin de quelque chose comme ça. Laissez-moi vous expliquer pourquoi:
J'utilise Emacs. Périodiquement, je passe en revue et cherche de nouvelles versions des fichiers source Lisp pour les paquets tiers. Disons que j'ai un fichier, foo.el, qui, selon l'en-tête, est la version 1.3; si je regarde la dernière version et vois que c'est 1.143 ou 2.6 ou autre, je sais que je suis assez loin derrière.
Si à la place je vois quelques hachages de 40 caractères, je ne saurai pas lequel est le plus tardif ou n'aurai aucune idée de combien de temps il est plus tard. Je détesterais absolument si je devais vérifier manuellement les ChangeLogs juste pour avoir une idée de mon dépassement.
En tant que développeur, je souhaite étendre cette courtoisie, telle que je la vois, aux personnes qui utilisent ma sortie (et peut-être que je me moque de moi, mais laissons cela de côté pendant un moment). Je ne veux pas avoir à me souvenir d'incrémenter moi-même ce foutu nombre à chaque fois, ou un horodatage ou quelque chose comme ça. C'est un vrai PITA, et je le sais par expérience.
Alors, quelles alternatives ai-je? Si je ne peux pas obtenir un équivalent $ Id: $, comment puis-je fournir ce que je recherche?
Je dois mentionner que je m'attends à ce que l'utilisateur final n'ait PAS installé Git et même s'il le fait, il n'aura pas de référentiel local (en effet, je m'attends à ne pas le rendre disponible de cette façon).
filter-branch
ou quelque chose.