Tout le monde sait qu'un développement logiciel bien documenté mène au succès. Cependant, cela signifie généralement que non seulement du texte brut mais aussi du contenu binaire seront impliqués dans le document, comme un diagramme UML. Et j'ai entendu beaucoup de gens dire cela. Le système de contrôle de version n'est pas l'endroit approprié pour les fichiers binaires. Je comprends parfaitement et suis d'accord avec le problème. J'ai demandé à plusieurs développeurs chevronnés où le meilleur endroit pour stocker des documents devrait être et la réponse que j'ai obtenue était "wiki". Le wiki est bon mais j'ai considéré un autre problème potentiel. Comment le code source qui a été stocké dans un système de contrôle de version peut-il se connecter à son document associé dans le wiki? Disons que quelqu'un clone le référentiel de git ou mercurial. Comment trouver facilement le document? Ou ai-je juste raté quelque chose?
Je sais que certains systèmes wiki ont la capacité de s'intégrer aux systèmes de contrôle de source. Mais ma préoccupation ne concerne pas la capacité d'intégration. Si vous avez cloné le code source d'un référentiel git et après un certain temps, vous montez dans un train et souhaitez continuer à travailler hors ligne sur le train (ce qui est une grande caractéristique de DVCS). Ensuite, vous réalisez soudainement que vous n'avez aucun accès au document puisque vous travaillez hors ligne dans le train. En revanche, si le document était stocké dans le référentiel git, vous auriez accès au document avec le référentiel cloné.