romain@921: \chapter*{Préface} romain@925: \addcontentsline{toc}{chapter}{Préface} bos@26: \label{chap:preface} bos@26: romain@921: La gestion de source distribué est encore un territoire peu exploré romain@925: et qui, par conséquent, a grandi très rapidement grâce à la seule romain@925: volonté de ses explorateurs. bos@26: romain@925: Je rédige un livre sur ce sujet car je crois que c'est un sujet romain@921: important qui mérite bien un guide du ``terrain''. J'ai choisi d'écrire romain@925: ce livre sur Mercurial car c'est l'outil le plus simple pour découvrir romain@921: ce nouveau monde et que, en outre, il répond très bien au besoin de romain@921: réels environements, là où d'autres outils de gestion de source n'y romain@921: parviennent pas. bos@26: romain@921: \section{Cet ouvrage est un travail en cours} bos@26: romain@921: Je publie ce livre tout en continuant à l'écrire, dans l'espoir qu'il romain@921: vous sera utile. J'espère aussi que les lecteurs pourront ainsi contribuer romain@921: si ils souhaitent. bos@26: romain@925: \section{À propros des exemples de ce livre} bos@200: romain@921: Ce livre a une approche particulière des extrait de code. Ceci sont romain@921: toujours ``dynamique''---chacun est le résultat d'un script shell qui romain@921: exécute les commandes mercurial que vous voyez. Chaque fois qu'une romain@921: image du livre est construite tout les scripts d'exemple sont exécutés romain@921: automatiquement, et les résultats comparés à ceux attendus. bos@200: romain@921: Cette approche a l'avantage de garantir que les exemples sont toujours romain@921: juste; ils montrent \emph{exactement} le comportement de la version de romain@921: Mercurial spécifié dans la couverture de ce livre. Si je met à jour cette romain@921: version, et que les commandes changent, la génération du livre échouera. romain@921: romain@922: Il y a un petit désavantage à cette approche, les dates et les romain@922: durées que vous verrez dans ces exemples ont tendances à être romain@922: ``écrasés'' d'une manière très différente de manière très différente romain@922: d'une exécution manuel. Un être humain ne peut exécuter qu'une commande romain@922: toutes les secondes, alors que mes scripts automatisés en exécute romain@922: plusieurs en une seule seconde. bos@200: romain@922: Ainsi, en une seule seconde, plusieurs ``commits'' peuvent avoir lieu romain@922: au sein d'un exemple. Vous le constatez, entre autres, dans les romain@922: exemples sur \hgext{bisect}, dans la section~\ref{sec:undo:bisect}. bos@200: romain@922: En conséquence, quand vous lisez les exemples, n'accordez pas trop romain@922: d'importance aux dates et aux durées d'exécution des commandes. Mais romain@922: \emph{soyez sûr} que le comportement que vous voyez est cohérent et romain@922: reproductible. bos@200: romain@922: %TODO: Colophon ??? romain@922: \section{Colophon---Cet ouvrage est libre} bos@200: romain@922: %TODO: Link to wikipedia def ? romain@922: Ce livre est publié sous la licence ``Open Publication License'', et romain@922: est construit uniquement à l'aide de logiciels libres. Il est mis romain@922: en forme avec \LaTex{}; et les illustrations sont réalisées avec bos@26: \href{http://www.inkscape.org/}{Inkscape}. bos@26: romain@922: L'ensemble des fichiers sources de cet ouvrage sont publiés dans un romain@922: dépot mercurial \url{http://hg.serpentine.com/mercurial/book}. bos@26: bos@26: %%% Local Variables: bos@26: %%% mode: latex bos@26: %%% TeX-master: "00book" bos@26: %%% End: