Mercurial > hgbook
view ja/preface.tex @ 779:69923723e7f9
more hook.tex
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Mon, 27 Apr 2009 17:31:54 +0900 |
parents | 4ffdaa0773a3 |
children | 8a3041e6f3cb |
line wrap: on
line source
%\chapter*{Preface} \chapter*{$B$^$($,$-(B} \addcontentsline{toc}{chapter}{Preface} \label{chap:preface} %Distributed revision control is a relatively new territory, and has %thus far grown due to people's willingness to strike out into %ill-charted territory. $BJ,;6%j%S%8%g%s%3%s%H%m!<%k$OHf3SE*?7$7$$NN0h$G$"$j!$$3$l$^$G$N4V0c$C$?NN(B $B0h$+$iH4$1=P$=$&$H$$$&?M!9$N0U;V$G5^B.$KH/E8$7$F$$$k!%(B %I am writing a book about distributed revision control because I %believe that it is an important subject that deserves a field guide. %I chose to write about Mercurial because it is the easiest tool to %learn the terrain with, and yet it scales to the demands of real, %challenging environments where many other revision control tools fail. $BI.<T$,J,;6%j%S%8%g%s%3%s%H%m!<%k$K$D$$$F$NK\$r=q$$$F$$$k$N$O!$$3$l$,%U%#!<(B $B%k%I%,%$%I$rI,MW$H$9$k=EMW$J2]Bj$@$H;W$C$?$+$i$@!%(BMercurial$B$K$D$$$F=q$3$&(B $B$HA*$s$@$N$O!$$3$l$,A4BN$r3X$V$N$,:G$b4JC1$J%D!<%k$G!$$7$+$bB>$N%j%S%8%g(B $B%s%3%s%H%m!<%k%D!<%k$,1}!9$K$7$F<:GT$7$F$$$k!$<B:]$ND)@oE*$J4D6-$N5a$a$K(B $B9g$o$;$F%9%1!<%k$9$k%D!<%k$@$+$i$@!%(B %\section{This book is a work in progress} \section{$B$3$NK\$O<9I.Cf$G$"$k(B} %I am releasing this book while I am still writing it, in the hope that %it will prove useful to others. I also hope that readers will %contribute as they see fit. $B$3$NK\$O$^$@<9I.Cf$G$"$k$,!$$3$l$,FI<T$K$H$C$FM-MQ$G$"$k$H?.$8$F8x3+$9$k(B $B$3$H$K$7$?!%$^$?!$FI<T$+$i$bH`$i$N5a$a$K9g$o$;$F9W8%$,$"$k$3$H$r4|BT$7$F(B $B$$$k!%(B %\section{About the examples in this book} \section{$B$3$NK\$NNc$K$D$$$F(B} %This book takes an unusual approach to code samples. Every example is %``live''---each one is actually the result of a shell script that %executes the Mercurial commands you see. Every time an image of the %book is built from its sources, all the example scripts are %automatically run, and their current results compared against their %expected results. $B$3$NK\$O%3!<%I%5%s%W%k$KIaDL$H0c$&%"%W%m!<%A$r<h$C$F$$$k!%A4$F$NNc$O(B``$B@8(B $B$-$F$$$k(B''---$BA4$F$NNc$O(BMercurial$B%3%^%s%I$r5/F0$9$k%7%'%k%9%/%j%W%H$N7k2L(B $B$G$"$k!%$3$NK\$G$O!$2hA|$,%=!<%9$+$i@8@.$5$l$kEY$K!$%9%/%j%W%H$,<+F0E*$K(B $B5/F0$9$k!%8=:_$N7k2L$O4|BT$5$l$k7k2L$HHf3S$5$l$k!%(B %The advantage of this approach is that the examples are always accurate; %they describe \emph{exactly} the behaviour of the version of Mercurial %that's mentioned at the front of the book. If I update the version of %Mercurial that I'm documenting, and the output of some command changes, %the build fails. $B$3$N%"%W%m!<%A$NMxE@$O!$Nc$,>o$K@53N$G$"$k$3$H$G!$5-=R$OK\$NI=;f$G8@5Z$7(B $B$F$$$k(BMercurial$B$N%P!<%8%g%s$G$N5sF0$H(B\emph{$B87L)$K(B}$B0lCW$9$k!%(B $BI.<T$,(BMercurial$B$N%P!<%8%g%s$r99?7$7!$%3%^%s%I$N=PNO$,JQ$o$k$H%S%k%I$O<:(B $BGT$9$k!%(B %There is a small disadvantage to this approach, which is that the dates %and times you'll see in examples tend to be ``squashed'' together in a %way that they wouldn't be if the same commands were being typed by a %human. Where a human can issue no more than one command every few %seconds, with any resulting timestamps correspondingly spread out, my %automated example scripts run many commands in one second. $B$3$N%"%W%m!<%A$N>.$5$J7gE@$O!$Nc$NCf$G8+$i$l$kF|IU$H;~9o$,?M4V$,%?%$%W$7(B $B$F$$$l$PM-$jF@$J$$$[$I(B``$B=8$^$C$F(B''$B$7$^$C$F$$$k$3$H$@!%?M4V$G$"$l$P!$(B1$B$D$N(B $B%3%^%s%I$r<B9T$9$k$N$K?tIC$O$+$+$j!$%?%$%`%9%?%s%W$O9-$$HO0O$K3H$,$k$O$:(B $B$N$H$3$m$,!$$3$NK\$GNc$r:n@.$9$k%9%/%j%W%H$G$O!$(B1$BIC$KB?$/$N%3%^%s%I$r<B9T(B $B$7$F$7$^$&!%(B %As an instance of this, several consecutive commits in an example can %show up as having occurred during the same second. You can see this %occur in the \hgext{bisect} example in section~\ref{sec:undo:bisect}, %for instance. $B$3$N$?$a!$Nc$NCf$K8=$l$kO"B3$7$?%3%_%C%H$O!$F1$8IC$K5/$-$?$h$&$K$J$C$F$$(B $B$k!%Nc$($P!$(B~\ref{sec:undo:bisect}$B$N@a$N(B\hgext{bisect}$B$NNc$G$3$l$,8+$i$l(B $B$k!%(B %So when you're reading examples, don't place too much weight on the %dates or times you see in the output of commands. But \emph{do} be %confident that the behaviour you're seeing is consistent and %reproducible. $B=>$C$F!$Nc$rFI$`;~$K$O!$F|IU$H;~9o$K$"$^$j94$i$J$$$h$&$K$7$F$$$?$@$-$?$$!%(B $B$7$+$7!$$=$3$G8+$i$l$k$U$k$^$$$O@53N$G$"$j!$:F8=2DG=$G$"$k$3$H$O4V0c$$$N(B $B$J$$$b$N$G$"$k!%(B %\section{Colophon---this book is Free} \section{$BGXI=;f(B---$B$3$NK\$OL5NA$G$"$k(B} %This book is licensed under the Open Publication License, and is %produced entirely using Free Software tools. It is typeset with %\LaTeX{}; illustrations are drawn and rendered with %\href{http://www.inkscape.org/}{Inkscape}. $B$3$NK\$O(BOpen Publication License$B$N2<$G%i%$%;%s%9$5$l!$A4BN$KEO$C$F%U%j!<(B $B%=%U%H%&%'%"%D!<%k$r;H$C$F:n$i$l$F$$$k!%AHHG$O(B\LaTeX{}$B$r;H$C$F9T$o$l!$?^(B $BHG$O(B\href{http://www.inkscape.org/}{Inkscape}$B$r;H$C$F9T$o$l$F$$$k!%(B %The complete source code for this book is published as a Mercurial %repository, at \url{http://hg.serpentine.com/mercurial/book}. $B$3$NK\$N40A4$J%=!<%9$O!$(B\url{http://hg.serpentine.com/mercurial/book}$B$K(B $B$F(BMercurial$B%j%]%8%H%j$H$7$F8x3+$5$l$F$$$k!%(B %%% Local Variables: %%% mode: yatex %%% TeX-master: "00book" %%% End: