hgbook
annotate ja/concepts.tex @ 983:5e1e70fcdfdb
Corrected some errors.
- Indentation problems
- Syntax errors (missing </para>,...)
- French mistakes
- Indentation problems
- Syntax errors (missing </para>,...)
- French mistakes
author | Frédéric Bouquet <youshe.jaalon@gmail.com> |
---|---|
date | Tue Sep 08 23:42:42 2009 +0200 (2009-09-08) |
parents | |
children |
rev | line source |
---|---|
foozy@708 | 1 \chapter{Behind the scenes} |
foozy@708 | 2 \label{chap:concepts} |
foozy@708 | 3 |
foozy@708 | 4 $BB?$/$N9=@.4IM}%7%9%F%`$H0[$J$j!"(B |
foozy@708 | 5 Mercurial $B$,4p$K$7$F$$$k35G0$OHs>o$KC1=c$J$N$G!"(B |
foozy@708 | 6 Mercurial $B$N%W%m%0%i%`$,<B:]$K$I$N$h$&$KF0:n$9$k$N$+$rM}2r$9$k$N$O4JC1$G$9!#(B |
foozy@708 | 7 $B$=$N$h$&$JCN<1$OI,MWL5$$$+$b$7$l$^$;$s$,!"(B |
foozy@708 | 8 $BI.<T$OFb>p$K4X$9$k(B``$B35G0M}2r(B''$B$,M-MQ$G$"$k$H9M$($F$$$^$9!#(B |
foozy@708 | 9 |
foozy@708 | 10 $BI.<T<+?H$O!"Fb>p$rM}2r$9$k$3$H$G!"(B |
foozy@708 | 11 Mercurial $B$,(B\emph{$B0BA4@-(B}$B$H(B\emph{$B8zN((B}$B$KN10U$7$F@_7W$5$l$F$$$k!"(B |
foozy@708 | 12 $B$H$$$&3N?.$rF@$k$3$H$,$G$-$^$7$?!#(B |
foozy@708 | 13 $B$^$?!"(B |
foozy@708 | 14 $B9=@.4IM}A`:n$r9T$C$?:]$K%=%U%H%&%'%"$,$I$N$h$&$K5!G=$9$k$N$+$r!"(B |
foozy@708 | 15 $BMF0W$K3P$($F$*$1$k$N$G$"$l$P!"(B |
foozy@708 | 16 $B9=@.4IM}%D!<%k$N?6$kIq$$$K6C$+$5$l$k5!2q$,8:$k!"(B |
foozy@708 | 17 $B$H$$$&E@$bHs>o$K=EMW$G$9!#(B |
foozy@708 | 18 |
foozy@708 | 19 $B$3$N>O$G$O!"(B |
foozy@708 | 20 $B:G=i$K(B |
foozy@708 | 21 Mercurial $B$N@_7W$K$*$1$kCf3KE*$J35G0$K$D$$$F@bL@$7$?>e$G!"(B |
foozy@708 | 22 $B<BAu$K$*$1$k6=L#?<$$E@$K4X$9$k>\:Y$r4v$D$+<h$j>e$2$h$&$H;W$$$^$9!#(B |
foozy@708 | 23 |
foozy@708 | 24 \section{Mercurial's historical record} |
foozy@708 | 25 |
foozy@708 | 26 \subsection{Tracking the history of a single file} |
foozy@708 | 27 |
foozy@708 | 28 $B%U%!%$%k$NJQ99$rDI@W$9$k>l9g!"(B |
foozy@708 | 29 Mercurial $B$O%U%!%$%k$NMzNr$r(B |
foozy@708 | 30 \emph{filelog} $B$H8F$P$l$k%a%?%G!<%?%*%V%8%'%/%H7A<0$GJ]B8$7$^$9!#(B |
foozy@708 | 31 filelog $B$K5-O?$5$l$k8D!9$NMWAG$O!"(B |
foozy@708 | 32 $BDI@WBP>]%U%!%$%k$N!"(B |
foozy@708 | 33 $B$H$"$k%j%S%8%g%s$r:F8=$9$k$N$K==J,$J>pJs$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 34 filelog $B$O(B |
foozy@708 | 35 \sdirname{.hg/store/data} $B%G%#%l%/%H%jG[2<$K%U%!%$%k$H$7$FJ]B8$5$l$F$*$j!"(B |
foozy@708 | 36 $BMzNr>pJs$H!"(B |
foozy@708 | 37 Mercurial $B$N%j%S%8%g%s8!:w$rJd=u$9$k%$%s%G%C%/%9$N!"(B |
foozy@708 | 38 $B#2<oN`$N>pJs$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 39 |
foozy@708 | 40 $B%5%$%:$,Bg$-$+$C$?$jJQ99MzNr$NB?$$%U%!%$%k$N>l9g!"(B |
foozy@708 | 41 filelog $B$rMzNr>pJs!J3HD%;R(B ``\texttt{.d}''$B!K(B |
foozy@708 | 42 $B$H%$%s%G%C%/%9!J3HD%;R(B ``\texttt{.i}''$B!K$N#2$D$KJ,N%$7$FJ]B8$5$l$^$9!#(B |
foozy@708 | 43 $BJQ99MzNr$,$=$l$[$IL5$$>.$5$J%U%!%$%k$N>l9g!"(B |
foozy@708 | 44 $BMzNr>pJs$H%$%s%G%C%/%9$O(B |
foozy@708 | 45 ``\texttt{.i}'' $B3HD%;R$r;}$DC10l$N%U%!%$%k$KJ]B8$5$l$^$9!#(B |
foozy@708 | 46 $B:n6HNN0h%G%#%l%/%H%jCf$N%U%!%$%k$H!"(B |
foozy@708 | 47 $B$=$NJQ99MzNr$rDI@W$9$k$?$a$N%j%]%8%H%jCf$N(B filelog $B%U%!%$%k$NBP1~$r!"(B |
foozy@708 | 48 $B?^(B~\ref{fig:concepts:filelog}$B$K<($7$^$9!#(B |
foozy@708 | 49 |
foozy@708 | 50 \begin{figure}[ht] |
foozy@708 | 51 \centering |
foozy@708 | 52 \grafix{filelog} |
foozy@708 | 53 \caption{Relationships between files in working directory and |
foozy@708 | 54 filelogs in repository} |
foozy@708 | 55 \label{fig:concepts:filelog} |
foozy@708 | 56 \end{figure} |
foozy@708 | 57 |
foozy@708 | 58 \subsection{Managing tracked files} |
foozy@708 | 59 |
foozy@708 | 60 |
foozy@708 | 61 $BDI@WBP>]%U%!%$%k$N>pJs$r$^$H$a$k$?$a$K!"(B |
foozy@708 | 62 Mercurial $B$O(B \emph{manifest} $B$H8F$P$l$k9=B$$r;HMQ$7$F$$$^$9!#(B |
foozy@708 | 63 manifest $B$K5-O?$5$l$k8D!9$NMWAG$O!"(B |
foozy@708 | 64 $BEv3:%A%'%s%8%;%C%H$K$*$1$k%U%!%$%k$N0lMw$d!"(B |
foozy@708 | 65 $B3F%U%!%$%k$N%j%S%8%g%s!"(B |
foozy@708 | 66 $B4v$D$+$N%U%!%$%k$N%a%?%G!<%?$H$$$C$?!"(B |
foozy@708 | 67 $B8D!9$N%A%'%s%8%;%C%H$4$H$N%U%!%$%k$K4X$9$k>pJs$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 68 |
foozy@708 | 69 \subsection{Recording changeset information} |
foozy@708 | 70 |
foozy@708 | 71 \emph{changelog} $B$O!"(B |
foozy@708 | 72 $B%A%'%s%8%;%C%H$N%3%_%C%H<g$d!"(B |
foozy@708 | 73 $B%3%_%C%H;~$N%m%0%a%C%;!<%8!"(B |
foozy@708 | 74 $B$=$NB>%A%'%s%8%;%C%H$K4X$9$k4v$D$+$N>pJs$d!"(B |
foozy@708 | 75 manifest $B$N%j%S%8%g%s$H$$$C$?!"(B |
foozy@708 | 76 $B8D!9$N%A%'%s%8%;%C%H$K4X$9$k>pJs$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 77 |
foozy@708 | 78 \subsection{Relationships between revisions} |
foozy@708 | 79 |
foozy@708 | 80 changelog$B!"(Bmanifest $B$J$$$7(B filelog $B$K$*$1$k8D!9$N%j%S%8%g%s$O!"(B |
foozy@708 | 81 $BD>@\$N?F%j%S%8%g%s(B |
foozy@708 | 82 $B!J%^!<%8$r9T$C$?%j%S%8%g%s$N>l9g$O!"(B |
foozy@708 | 83 $B%^!<%8BP>]$H$J$C$?#2$D$N?F%j%S%8%g%s!K(B |
foozy@708 | 84 $B$X$N;2>H$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 85 $B:#=R$Y$?$h$&$K!"(B |
foozy@708 | 86 $B3F9=B$$K(B\emph{$B$^$?$,$C$?(B}$B4XO"@-$r$b$A!"(B |
foozy@708 | 87 $B$=$l$i$OI,A3E*$K3,AX9=B$$r;}$C$F$$$^$9!#(B |
foozy@708 | 88 |
foozy@708 | 89 $B%j%]%8%H%jCf$NA4$F$N%A%'%s%8%;%C%H$K4X$7$F!"(B |
foozy@708 | 90 changelog $B$K$O87L)$K#1$D$N%j%S%8%g%s$,J]B8$5$l$^$9!#(B |
foozy@708 | 91 changelog $B$K$*$1$k3F%j%S%8%g%s$O!"(B |
foozy@708 | 92 manifest $BCf$N%j%S%8%g%s$X$N;2>H$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 93 manifest $BCf$N3F%j%S%8%g%s$O!"(B |
foozy@708 | 94 $B%A%'%s%8%;%C%H$,@8@.$5$l$?:]$N3F%U%!%$%k$N%j%S%8%g%s$KBP1~$9$k(B |
foozy@708 | 95 filelog $BCf$N%j%S%8%g%s$X$N;2>H$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 96 $B$3$N4XO"@-$r?^(B~\ref{fig:concepts:metadata}$B$K<($7$^$9!#(B |
foozy@708 | 97 |
foozy@708 | 98 \begin{figure}[ht] |
foozy@708 | 99 \centering |
foozy@708 | 100 \grafix{metadata} |
foozy@708 | 101 \caption{Metadata relationships} |
foozy@708 | 102 \label{fig:concepts:metadata} |
foozy@708 | 103 \end{figure} |
foozy@708 | 104 |
foozy@708 | 105 $B?^$+$i$b$o$+$k$h$&$K!"(B |
foozy@708 | 106 changelog$B!"(Bmanifest $B$*$h$S(B |
foozy@708 | 107 filelog $B$,J];}$9$k%j%S%8%g%s>pJs4V$N4X78$O!"(B |
foozy@708 | 108 $BI,$:$7$b(B``$B#1BP#1(B''$B$H$$$&$o$1$G$O$"$j$^$;$s!#(B |
foozy@708 | 109 $B#2$D$N%A%'%s%8%;%C%H$N4V$G(B |
foozy@708 | 110 manifest $B$,JQ99$5$l$F$$$J$$>l9g!"(B |
foozy@708 | 111 $B$=$l$i$N%A%'%s%8%;%C%H$KBP1~$9$k(B changelog $BMWAG$O!"(B |
foozy@708 | 112 manifest $BCf$NF1$8%j%S%8%g%s$r;2>H$7$^$9!#(B |
foozy@708 | 113 $B#2$D$N%A%'%s%8%;%C%H$N4V$G(B |
foozy@708 | 114 Mercurial $B$,DI@W$9$k%U%!%$%k$,JQ99$5$l$F$$$J$$>l9g!"(B |
foozy@708 | 115 $B$=$l$i$N%A%'%s%8%;%C%H$KBP1~$9$k(B manifest $BMWAG$O!"(B |
foozy@708 | 116 filelog $BCf$NF1$8%j%S%8%g%s$r;2>H$7$^$9!#(B |
foozy@708 | 117 |
foozy@708 | 118 \section{Safe, efficient storage} |
foozy@708 | 119 |
foozy@708 | 120 changelog$B!"(Bmanifest $B$*$h$S(B filelog $B$O!"(B |
foozy@708 | 121 \emph{revlog} $B$H8F$P$l$kF1$89=B$$K$h$j9=@.$5$l$F$$$^$9!#(B |
foozy@708 | 122 |
foozy@708 | 123 \subsection{Efficient storage} |
foozy@708 | 124 |
foozy@708 | 125 revlog $B$O(B \emph{$B:9J,(B}$B<jK!$H$$$&;EAH$_$r;HMQ$7$F!"(B |
foozy@708 | 126 $B%j%S%8%g%s>pJs$r8zN(E*$K3JG<$7$F$$$^$9!#(B |
foozy@708 | 127 $B:9J,<jK!$G$O!"(B |
foozy@708 | 128 $B%U%!%$%k$N3F%j%S%8%g%s$4$H$K40A4$JJ#@=$rJ];}$9$kBe$o$j$K!"(B |
foozy@708 | 129 $B5l%j%S%8%g%s$+$i?7%j%S%8%g%s$X$NJQ7A$KI,MW$J>pJs$rJ];}$7$^$9!#(B |
foozy@708 | 130 $BB?$/$N%U%!%$%k$G$N%G!<%?3JG<$K$*$$$F!"(B |
foozy@708 | 131 $B:9J,<jK!$O0lHLE*$K40A4$JJ#@=$N>l9g$N?t%Q!<%;%s%HDxEY$N%5%$%:$K$J$j$^$9!#(B |
foozy@708 | 132 |
foozy@708 | 133 $B5l<0$N9=@.4IM}%7%9%F%`$G$O!"(B |
foozy@708 | 134 $B%F%-%9%H7A<0$N%U%!%$%k$G$7$+:9J,<jK!$,E,MQ$G$-$J$$$b$N$b$"$j$^$9!#(B |
foozy@708 | 135 $B$=$l$i$N%7%9%F%`$K$*$1$k%P%$%J%j%U%!%$%k$N3JG<$O!"(B |
foozy@708 | 136 $B40A4$J%9%J%C%W%7%g%C%H$+!"(B |
foozy@708 | 137 $B%F%-%9%HI=8=7A<0$X$NJQ49$K$h$C$F9T$o$l$^$9$,!"(B |
foozy@708 | 138 $B$3$l$i$O6&$KIT7P:Q$J<jK!$G$9!#(B |
foozy@708 | 139 $BG$0U$N%P%$%J%j%G!<%?$r4^$`%U%!%$%k$G$"$C$F$b!"(B |
foozy@708 | 140 Mercurial $B$O:9J,$r8zN(E*$K07$&$3$H$,$G$-$^$9$N$G!"(B |
foozy@708 | 141 $B%F%-%9%H$rFCJL07$$$9$kI,MW$O$"$j$^$;$s(B\footnote{$BLuCm(B: |
foozy@708 | 142 <code>cvs add</code> $B$K$*$1$k(B |
foozy@708 | 143 <code>-kb</code> $B;XDj$N7gMn$K$h$k%U%!%$%kFbMF$NGKB;!"(B |
foozy@708 | 144 $B$H$$$C$??4G[$O$"$j$^$;$s!#(B |
foozy@708 | 145 $BL`$b!"(BMercurial $B$N4pDlF0:n$G$O!"(B |
foozy@708 | 146 $B%-!<%o!<%I$NCV49Ey$r9T$$$^$;$s$N$G!"(B |
foozy@708 | 147 $B$=$b$=$b?4G[$9$kI,MW$,L5$$$N$G$9$,!D!#(B}$B!#(B |
foozy@708 | 148 |
foozy@708 | 149 \subsection{Safe operation} |
foozy@708 | 150 \label{sec:concepts:txn} |
foozy@708 | 151 |
foozy@708 | 152 Mercurial $B$O(B revlog $B$NKvHx$K%G!<%?$r(B\emph{$BDI2C(B}$B$9$k$@$1$G!"(B |
foozy@708 | 153 $B=q$-9~$^$l$?8e$+$i%U%!%$%k$N0lIt$r2~JQ$9$k$h$&$J$3$H$O9T$$$^$;$s!#(B |
foozy@708 | 154 $B4{B8%G!<%?$N2~JQ$rI,MW$H$9$k;EAH$_$HHf3S$7$?>l9g!"(B |
foozy@708 | 155 $B$3$N<jK!$O7xO43n$D8zN(E*$G$9!#(B |
foozy@708 | 156 |
foozy@708 | 157 $B$=$l$K2C$($F!"(B |
foozy@708 | 158 Mercurial $B$OJ#?t$N%U%!%$%k$K$^$?$,$C$?A4$F$N=q$-9~$_$r!"(B |
foozy@708 | 159 $BC10l$N(B\emph{$B%H%i%s%6%/%7%g%s(B}$B$N0lIt$H$7$F07$$$^$9!#(B |
foozy@708 | 160 $B%H%i%s%6%/%7%g%s$O(B\emph{$BIT2DJ,(B}$B$J$b$N$H$7$F07$o$l$^$9$N$G!"(B |
foozy@708 | 161 $B%H%i%s%6%/%7%g%sA4BN$,@.8y$9$l$P7k2L$NA4$F$,MxMQ<T$K8+$($k$h$&$K$J$j$^$9$,!"(B |
foozy@708 | 162 $B%H%i%s%6%/%7%g%s$N0lIt$G$b<:GT$7$?>l9g$K$O!"(B |
foozy@708 | 163 $BA4$F$N=q$-9~$_A`:n$O<h$j>C$5$l$^$9!#(B |
foozy@708 | 164 $B0lJ}$O%G!<%?$NFI$_9~$_$r9T$$B>J}$O%G!<%?$N=q$-=P$7$r9T$&$h$&$J!"(B |
foozy@708 | 165 $B#2$D$N(B Mercurial $B%W%m%;%9$rF1;~$K<B9T$7$?>l9g$G$b!"(B |
foozy@708 | 166 $B$3$NIT2DJ,J]>Z$K$h$j!"(B |
foozy@708 | 167 $BFI$_9~$_$r:.Mp$5$;$k$h$&$JItJ,E*$J=q$-9~$_%G!<%?$r!"(B |
foozy@708 | 168 $B%G!<%?FI$_9~$_B&$N%W%m%;%9$,FI$_9~$`$3$H$O$"$j$^$;$s(B |
foozy@708 | 169 \footnote{$BLuCm(B: |
foozy@708 | 170 $B87L)$K$O$3$N5-=R$O@5$7$/$"$j$^$;$s!#(B |
foozy@708 | 171 $B>\:Y$O(B \ref{sec:hook:carepretxn}~$B@a$r;2>H$7$F$/$@$5$$!#(B}$B!#(B |
foozy@708 | 172 |
foozy@708 | 173 Mercurial $B$,%U%!%$%k$X$NDI2C$7$+9T$o$J$$$3$H$,!"(B |
foozy@708 | 174 $B%H%i%s%6%/%7%g%s$NIT2DJ,@-J]>Z$NDs6!$rMF0W$K$7$F$$$^$9!#(B |
foozy@708 | 175 $B%H%i%s%6%/%7%g%sJ]>Z$,MF0W$G$"$kDx!"(B |
foozy@708 | 176 $B$=$l$,@5$7$/5!G=$7$F$$$k$3$H$r3N?.$G$-$kH&$G$9!#(B |
foozy@708 | 177 |
foozy@708 | 178 \subsection{Fast retrieval} |
foozy@708 | 179 |
foozy@708 | 180 $B=i4|$N9=@.4IM}%7%9%F%`$,6&$K4Y$C$F$$$?(B\emph{$BHs8zN($JI|5l(B}$BLdBj$NMn$H$77j$r!"(B |
foozy@708 | 181 Mercurial $B$O>e<j$K2sHr$7$F$$$^$9!#(B |
foozy@708 | 182 $BKX$I$N9=@.4IM}%7%9%F%`$O!"(B |
foozy@708 | 183 ``$B%9%J%C%W%7%g%C%H(B''$B$KBP$9$kJQ99$NDI2CE*$JO"B3$H$7$F!"(B |
foozy@708 | 184 $B%j%S%8%g%s$NFbMF$rJ];}$7$F$$$^$7$?!#(B |
foozy@708 | 185 $B$3$N<jK!$N>l9g!"(B |
foozy@708 | 186 $BFCDj$N%j%S%8%g%s$r:F9=C[$9$k$K$O!"(B |
foozy@708 | 187 $B:G=i$K%9%J%C%W%7%g%C%H$rFI$_9~$_!"(B |
foozy@708 | 188 $BB3$$$FBP>]%j%S%8%g%s$H$N4V$NA4$F$N:9J,%G!<%?$rFI$_9~$`I,MW$,$"$j$^$9!#(B |
foozy@708 | 189 $B%U%!%$%k$NMzNr$,@Q$_=E$J$k$[$I!"(B |
foozy@708 | 190 $B:9J,%G!<%?$rFI$_9~$^$J$1$l$P@.$i$J$$%j%S%8%g%s$,A}2C$7!"(B |
foozy@708 | 191 $BFCDj$N%j%S%8%g%s$N:F9=C[$K;~4V$,I,MW$H$J$j$^$9!#(B |
foozy@708 | 192 |
foozy@708 | 193 \begin{figure}[ht] |
foozy@708 | 194 \centering |
foozy@708 | 195 \grafix{snapshot} |
foozy@708 | 196 \caption{Snapshot of a revlog, with incremental deltas} |
foozy@708 | 197 \label{fig:concepts:snapshot} |
foozy@708 | 198 \end{figure} |
foozy@708 | 199 |
foozy@708 | 200 Mercurial $B$,$3$NLdBj$N2r7h$K;HMQ$7$F$$$k<jK!$O!"(B |
foozy@708 | 201 $B4JC1$J$b$N$G$9$,8z2LE*$G$9!#(B |
foozy@708 | 202 $BA02s$N%9%J%C%W%7%g%C%H:n@.;~E@$+$i!"(B |
foozy@708 | 203 $B8GDj$5$l$?ogCM$rD6$($F:9J,>pJs$,C_@Q$5$l$?:]$K$O!"(B |
foozy@708 | 204 $B:9J,>pJs$NC_@Q$G$O$J$/!"(B |
foozy@708 | 205 $B?7$?$J%9%J%C%W%7%g%C%H!JL^O@05=L$O9T$$$^$9!K$rJ]B8$9$k!"(B |
foozy@708 | 206 $B$H$$$&$b$N$G$9!#(B |
foozy@708 | 207 $B$3$N<jK!$O!"(B |
foozy@708 | 208 \emph{$BG$0U$N(B}$B%j%S%8%g%s$K$*$1$k%U%!%$%k$rAGAa$/:F9=C[$G$-$^$9!#(B |
foozy@708 | 209 $B$3$N<jK!$OHs>o$KM-8z$G$"$k$?$a!"(B |
foozy@708 | 210 $BB>$N4v$D$+$N9=@.4IM}%7%9%F%`$K$b<h$j9~$^$l$F$$$^$9!#(B |
foozy@708 | 211 |
foozy@708 | 212 $B?^(B~\ref{fig:concepts:snapshot}$B$N35MW$,<($9$h$&$K!"(B |
foozy@708 | 213 Mercurial $B$O!"(B |
foozy@708 | 214 revlog $B$N%$%s%G%C%/%9%U%!%$%k$K$*$1$k3FMWAG$K!"(B |
foozy@708 | 215 $BFCDj$N%j%S%8%g%s$N:F9=C[$N:]$KFI$_9~$_$,I,MW$H$5$l$k!"(B |
foozy@708 | 216 $B%G!<%?%U%!%$%kCf$NMWAG$NHO0O$r3JG<$7$^$9!#(B |
foozy@708 | 217 |
foozy@708 | 218 \subsubsection{Aside: the influence of video compression} |
foozy@708 | 219 |
foozy@708 | 220 $BF02h05=L$r=OCN$7$F$$$k$+!"(B |
foozy@708 | 221 $B%1!<%V%k$J$$$71R@1$K$h$k%G%8%?%k%F%l%SG[?.$r;kD0$7$?$3$H$,$"$k$J$i$P!"(B |
foozy@708 | 222 $B$?$$$F$$$NF02h05=L7A<0$K$*$$$F3FF02h%U%l!<%`$,!"(B |
foozy@708 | 223 $B@h9T$9$k%U%l!<%`$H$N:9J,$GJ];}$5$l$F$$$k$3$H$r$4B8CN$+$b$7$l$^$;$s!#(B |
foozy@708 | 224 $B2C$($F$=$l$i$N7A<0$G$O!"(B |
foozy@708 | 225 $B05=LN($r8~>e$5$;$k$?$a$K(B``$BHs2D5U(B''$B05=L<jK!$rMQ$$$F$$$^$9$N$G!"(B |
foozy@708 | 226 $B%U%l!<%`4V:9J,$N?t$K1~$8$F;k3PE*%(%i!<$,C_@Q$5$l$^$9!#(B |
foozy@708 | 227 |
foozy@708 | 228 $BF02hG[?.$N>l9g!"(B |
foozy@708 | 229 $B;~@^$N?.9f0[>o$K$h$k(B``$B7gMn(B''$B$,M-$jF@$^$9$7!"(B |
foozy@708 | 230 $B2D5U05=L2aDx$K$h$j@8$8$k8m:9$NC_@Q$r@)8B$9$kI,MW$b$"$k$?$a!"(B |
foozy@708 | 231 $BF02h05=LB&$G$ODj4|E*$K40A4$J%U%l!<%`(B |
foozy@708 | 232 $B!J(B``$B%-!<%U%l!<%`(B''$B$H8F$P$l$^$9!K$r05=L7A<0$NCf$KA^F~$7$^$9!#(B |
foozy@708 | 233 $B$3$l$OF02h?.9f$,CfCG$5$l$F$b!"(B |
foozy@708 | 234 $B<!$N%-!<%U%l!<%`$NE~Ce;~E@$+$i$N:F3+$,2DG=$G$"$k$3$H$r0UL#$7$^$9!#(B |
foozy@708 | 235 $BId9f2=%(%i!<$NC_@Q$b!"(B |
foozy@708 | 236 $B8D!9$N%-!<%U%l!<%`$G%/%j%"$5$l$^$9!#(B |
foozy@708 | 237 |
foozy@708 | 238 \subsection{Identification and strong integrity} |
foozy@708 | 239 |
foozy@708 | 240 $B:9J,$J$$$7%9%J%C%W%7%g%C%H>pJs$N%G!<%?$KBP$7$F!"(B |
foozy@708 | 241 revlog $BMWAG$O0E9f2=$KMQ$$$i$l$k%O%C%7%eCM$r7W;;$7$FJ];}$7$F$$$^$9!#(B |
foozy@708 | 242 $B$3$l$K$h$j!"(B |
foozy@708 | 243 $B%j%S%8%g%s$K4X$9$k>pJs$N56B$$r:$Fq$K$9$k$HF1;~$K!"(B |
foozy@708 | 244 $BITN8$NGKB;$N8!=P$,MF0W$K$J$j$^$9!#(B |
foozy@708 | 245 |
foozy@708 | 246 $B%O%C%7%eCM$N;;=P$O!"(B |
foozy@708 | 247 $BC1$J$kGKB;$N8!=P0J>e$N$b$N$r$b$?$i$7$^$9!#(B |
foozy@708 | 248 $B%O%C%7%eCM$O3F%j%S%8%g%s$N<1JL;R$H$7$F;HMQ$5$l$^$9!#(B |
foozy@708 | 249 Mercurial $B$N%(%s%I%f!<%6$H$7$FL\$K$9$k%A%'%s%8%;%C%H<1JL;R$N%O%C%7%eCM$O!"(B |
foozy@708 | 250 changelog $B$N%j%S%8%g%s$KM3Mh$9$kCM$G$9!#(B |
foozy@708 | 251 filelog $B$d(B manifest $B$G$b%O%C%7%eCM$r;HMQ$7$F$$$^$9$,!"(B |
foozy@708 | 252 Mercurial $B$G$O$3$l$i$OIqBfN"$N$_$G;HMQ$5$l$F$$$^$9!#(B |
foozy@708 | 253 |
foozy@708 | 254 $BFCDj%j%S%8%g%s$N%U%!%$%k$r:F9=C[$9$k>l9g$d!"(B |
foozy@708 | 255 $BB>$N%j%]%8%H%j$+$i%A%'%s%8%;%C%H$r<h$j9~$s$@>l9g!"(B |
foozy@708 | 256 Mercurial $B$O%O%C%7%eCM$,@5$7$$$3$H$r3NG'$7$^$9!#(B |
foozy@708 | 257 $B0l4S@-$KLdBj$,$"$k$3$H$,8!=P$5$l$?>l9g!"(B |
foozy@708 | 258 $B7Y9p$rH/$7$?>e$G!"(B |
foozy@708 | 259 $B?J9TCf$NA4$F$N=hM}$rDd;_$7$^$9!#(B |
foozy@708 | 260 |
foozy@708 | 261 Mercurial $B$,Dj4|E*$K:9$79~$s$G$$$k%9%J%C%W%7%g%C%H$O!"(B |
foozy@708 | 262 $BFCDj%j%S%8%g%s$N:F9=C[$N:]$N8zN($K2C$($F!"(B |
foozy@708 | 263 $BItJ,E*$J%G!<%?$NGKB;$KBP$9$k7xO4@-$r$b$?$i$7$F$^$9!#(B |
foozy@708 | 264 $B%O!<%I%&%'%"%(%i!<$d%7%9%F%`$N%P%0$K$h$C$F!"(B |
foozy@708 | 265 revlog $B$,ItJ,E*$KGKB;$7$?>l9g!"(B |
foozy@708 | 266 $BGKB;$rLH$l$?(B revlog $B$N%G!<%?$+$i!"(B |
foozy@708 | 267 $BGKB;$7$?It0L$NA08e6&$K!"(B |
foozy@708 | 268 $B0lIt!J$"$k$$$OKX$I$N!K%j%S%8%g%s$rI|5l$9$k$3$H$,2DG=$G$9!#(B |
foozy@708 | 269 $B:9J,$N$_$rJ];}$9$k%b%G%k$r:NMQ$9$k9=@.4IM}%7%9%F%`$G$O!"(B |
foozy@708 | 270 $B$3$N$h$&$J$3$H$O$G$-$^$;$s!#(B |
foozy@708 | 271 |
foozy@708 | 272 \section{Revision history, branching, and merging} |
foozy@708 | 273 |
foozy@708 | 274 $BA4$F$N(B Mercurial $B$N(B revlog $BMWAG$O!"(B |
foozy@708 | 275 $BDL>o$O(B\emph{$B?F(B}$B$H8@$o$l$kD>A0$N%j%S%8%g%s$N<1JL;R$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 276 $B<B:]$K$O!"(B |
foozy@708 | 277 $B3F(B revlog $BMWAG$O#1$D$G$O$J$/#2$D$N?F$N>pJs$rJ];}$G$-$^$9!#(B |
foozy@708 | 278 Mercurial $B$O(B``$B6u<1JL;R(B''$B!J(Bnull ID$B!K$H8F$P$l$kFCJL$J%O%C%7%eCM$r;H$C$F!"(B |
foozy@708 | 279 ``$B?FIT:_(B''$B$rI=8=$7$^$9(B\footnote{$BLuCm(B: |
foozy@708 | 280 $B$D$^$j!"B?$/$N(B revlog $BMWAG$O!"(B |
foozy@708 | 281 $B0lJ}$N?F%j%S%8%g%s$H$7$F6u(BID$B$rJ];}$7$F$$$^$9!#(B}$B!#(B |
foozy@708 | 282 $B$3$N%O%C%7%eCM$OC1=c$K(B0$B$,O"B3$7$?J8;zNs$G$9!#(B |
foozy@708 | 283 |
foozy@708 | 284 revlog $B$N35G0?^$r?^(B~\ref{fig:concepts:revlog}$B$K8+$k$3$H$,$G$-$^$9!#(B |
foozy@708 | 285 filelog $B$d(B manifest$B!"(Bchangelog $B$NA4$F$,F1$89=B$$r;}$C$F$*$j!"(B |
foozy@708 | 286 $B8D!9$NMWAG$,J];}$7$F$$$k!"(B |
foozy@708 | 287 $B:9J,$d%9%J%C%W%7%g%C%H$H$$$C$?%G!<%?$N<oJL$,0[$J$k$@$1$G$9!#(B |
foozy@708 | 288 |
foozy@708 | 289 revlog $B$K$*$1$k:G=i$N%j%S%8%g%s(B |
foozy@708 | 290 $B!J?^$K$*$1$kDl0LCV$N%j%S%8%g%s!K$O!"(B |
foozy@708 | 291 $B#2$D$N?F%j%S%8%g%s3JG<NN0h$NN>J}$K6u<1JL;R$rJ];}$7$F$$$^$9!#(B |
foozy@708 | 292 ``$BDL>o$N(B''$B%j%S%8%g%s$G$O!"(B |
foozy@708 | 293 $BBh#1?F$N3JG<NN0h$K$O?F%j%S%8%g%s$N<1JL;R$,!"(B |
foozy@708 | 294 $BBh#2?F$N3JG<NN0h$K$O6u<1JL;R$,3JG<$5$l!"(B |
foozy@708 | 295 $B?F%j%S%8%g%s$,#1$D$7$+$J$$$3$H$rI=$7$^$9!#(B |
foozy@708 | 296 $B?F%j%S%8%g%s$N<1JL;R$H$7$FF1$8<1JL;R$r3JG<$9$k%j%S%8%g%sF1;N$O!"(B |
foozy@708 | 297 $B8_$$$K%V%i%s%A$H$J$j$^$9!#(B |
foozy@708 | 298 $B%V%i%s%A$r%^!<%8$7$?%j%S%8%g%s$O!"(B |
foozy@708 | 299 $BE}9g$5$l$?N>J}$N%j%S%8%g%s$N<1JL;R$r?F%j%S%8%g%s$N<1JL;R$H$7$F3JG<$7$^$9!#(B |
foozy@708 | 300 |
foozy@708 | 301 \begin{figure}[ht] |
foozy@708 | 302 \centering |
foozy@708 | 303 \grafix{revlog} |
foozy@708 | 304 \caption{} |
foozy@708 | 305 \label{fig:concepts:revlog} |
foozy@708 | 306 \end{figure} |
foozy@708 | 307 |
foozy@708 | 308 \section{The working directory} |
foozy@708 | 309 |
foozy@708 | 310 Mercurial $B$O!"(B |
foozy@708 | 311 $B%j%]%8%H%j$G9=@.4IM}$5$l$F$$$k%U%!%$%k$N!"(B |
foozy@708 | 312 $BFCDj$N%j%S%8%g%s$K$*$1$k%9%J%C%W%7%g%C%H$r:n6HNN0h%G%#%l%/%H%j$KJ];}$7$^$9!#(B |
foozy@708 | 313 |
foozy@708 | 314 $B:n6HNN0h%G%#%l%/%H%j$O!"(B |
foozy@708 | 315 $B$I$N%j%S%8%g%s$N%9%J%C%W%7%g%C%H$rJ];}$7$F$$$k$N$+$r(B``$BCN$C$F$$$^$9(B''$B!#(B |
foozy@708 | 316 $B:n6HNN0h%G%#%l%/%H%j$rFCDj$N%j%S%8%g%s$G99?7$7$h$&$H$7$?>l9g!"(B |
foozy@708 | 317 Mercurial $B$O(B (1) $BAj1~$7$$%j%S%8%g%s$N(B manifest $B$r;2>H$7!"(B |
foozy@708 | 318 (2) $BEv3:%j%S%8%g%s$N%3%_%C%H;~E@$G$N4IM}BP>]%U%!%$%k$rFCDj$7!"(B |
foozy@708 | 319 (3) $B:n6HNN0h%G%#%l%/%H%jCf$N%U%!%$%k$,J];}$9$Y$-FbMF$r7hDj$7$^$9!#(B |
foozy@708 | 320 $B$=$N>e$G!"(B |
foozy@708 | 321 $BEv3:%A%'%s%8%;%C%H$N%3%_%C%H;~E@$HF1$8FbMF$r;}$D$h$&$K!"(B |
foozy@708 | 322 $B:n6HNN0h%G%#%l%/%H%jCf$K3F%U%!%$%k$NJ#@=$r:F@8@.$7$^$9!#(B |
foozy@708 | 323 |
foozy@708 | 324 dirstate $B7A<0$K$O!"(B |
foozy@708 | 325 $B:n6HNN0h%G%#%l%/%H%j$,$I$N%A%'%s%8%;%C%H$G99?7$5$l$F$$$k$+$H$+!"(B |
foozy@708 | 326 $B:n6HNN0h$G(B Mercurial $B$K$h$j9=@.4IM}$5$l$F$$$k%U%!%$%k$N0lMw$J$I!"(B |
foozy@708 | 327 $B:n6HNN0h%G%#%l%/%H%j$K4X$9$k(B |
foozy@708 | 328 Mercurial $B$N4IM}>pJs$,3JG<$5$l$F$$$^$9!#(B |
foozy@708 | 329 |
foozy@708 | 330 $B8D!9$N%j%S%8%g%s$K4X$9$k(B revlog $BMWAG$O!"(B |
foozy@708 | 331 $B#2$D$N?F%j%S%8%g%s<1JL;R$r3JG<$9$kNN0h$r;}$C$F$$$^$9$N$G!"(B |
foozy@708 | 332 $BDL>o$N%j%S%8%g%s!J#1$D$N?F%j%S%8%g%s$@$1$r;2>H!K$b!"(B |
foozy@708 | 333 $B#2$D$N%j%S%8%g%s$r%^!<%8$9$k%j%S%8%g%s$bI=8=2DG=$G$9$,!"(B |
foozy@708 | 334 dirstate $B7A<0$b#2$D$N?F%j%S%8%g%s<1JL;R$r3JG<$9$kNN0h$r;}$C$F$$$^$9!#(B |
foozy@708 | 335 \hgcmd{update} $B%3%^%s%I$r<B9T$7$?:]$K$O!"(B |
foozy@708 | 336 $B;XDj$7$?%A%'%s%8%;%C%H$O(B``$BBh#1?F(B''$B!J(Bfirst parent$B!K$H$7$FJ];}$5$l!"(B |
foozy@708 | 337 $BBh#2?F$O6u<1JL;R$rJ];}$7$^$9!#(B |
foozy@708 | 338 $B%A%'%s%8%;%C%H$H$N(B \hgcmd{merge} $B$r9T$C$?:]$K$O!"(B |
foozy@708 | 339 dirstate $B7A<0$,J];}$9$kBh#1?F$OJQ2=$7$^$;$s$,!"(B |
foozy@708 | 340 $BBh#2?F$O(B \hgcmd{merge} $B%3%^%s%I$K;XDj$5$l$?%A%'%s%8%;%C%H$K@_Dj$5$l$^$9!#(B |
foozy@708 | 341 \hgcmd{parents} $B%3%^%s%I$K$h$j!"(B |
foozy@708 | 342 dirstate $B7A<0$,J];}$9$k?F%j%S%8%g%s$N<1JL;R$rI=<($G$-$^$9!#(B |
foozy@708 | 343 |
foozy@708 | 344 \subsection{What happens when you commit} |
foozy@708 | 345 |
foozy@708 | 346 dirstate $B7A<0$,?F%j%S%8%g%s>pJs$rJ];}$9$k$N$O!"(B |
foozy@708 | 347 $B2?$b3P$(=q$-$N$?$a$@$1$G$O$"$j$^$;$s!#(B |
foozy@708 | 348 Mercurial $B$O(B dirstate $B7A<0$N;}$D?F%j%S%8%g%s>pJs$r!"(B |
foozy@708 | 349 $B%3%_%C%H$N:]$N(B\emph{$B?75,%A%'%s%8%;%C%H$N?F%A%'%s%8%;%C%H(B}$B$H$7$F;HMQ$7$^$9!#(B |
foozy@708 | 350 |
foozy@708 | 351 \begin{figure}[ht] |
foozy@708 | 352 \centering |
foozy@708 | 353 \grafix{wdir} |
foozy@708 | 354 \caption{The working directory can have two parents} |
foozy@708 | 355 \label{fig:concepts:wdir} |
foozy@708 | 356 \end{figure} |
foozy@708 | 357 |
foozy@708 | 358 $B?^(B~\ref{fig:concepts:wdir}$B$O!"(B |
foozy@708 | 359 $B#1$D$N?F%A%'%s%8%;%C%H$N$_$r;}$D!"(B |
foozy@708 | 360 $BDL>o$N:n6HNN0h%G%#%l%/%H%j$rI=$7$F$$$^$9!#(B |
foozy@708 | 361 $B?^$K$*$1$k:n6HNN0h%G%#%l%/%H%j$N?F%A%'%s%8%;%C%H$O!"(B |
foozy@708 | 362 $B%j%]%8%H%j$K$*$1$k:G?7$G3n$D;R$r;}$?$J$$%A%'%s%8%;%C%H$G$9$N$G!"(B |
foozy@708 | 363 \emph{tip} $B$H8F$P$l$^$9!#(B |
foozy@708 | 364 |
foozy@708 | 365 \begin{figure}[ht] |
foozy@708 | 366 \centering |
foozy@708 | 367 \grafix{wdir-after-commit} |
foozy@708 | 368 \caption{The working directory gains new parents after a commit} |
foozy@708 | 369 \label{fig:concepts:wdir-after-commit} |
foozy@708 | 370 \end{figure} |
foozy@708 | 371 |
foozy@708 | 372 $B:n6HNN0h%G%#%l%/%H%j$=$N$b$N$r!"(B |
foozy@708 | 373 ``$B%3%_%C%H$7$h$&$H$7$F$$$k%A%'%s%8%;%C%H(B'' |
foozy@708 | 374 $B$HB*$($k$H$o$+$j$d$9$$$G$7$g$&!#(B |
foozy@708 | 375 Mercurial $B$KBP$7$FDI2C!?:o=|!?2~L>$J$$$7J#@=$r;X<($7$?%U%!%$%k$O!"(B |
foozy@708 | 376 $B4{$K(B Mercurial $B$K$h$j9=@.4IM}$5$l$F$$$k%U%!%$%k$X$NJQ99$HF1MM$K!"(B |
foozy@708 | 377 $B$=$N%A%'%s%8%;%C%H$KH?1G$5$l$^$9!#(B |
foozy@708 | 378 $B$=$N?7$?$J%A%'%s%8%;%C%H$K$O!"(B |
foozy@708 | 379 $B:n6HNN0h%G%#%l%/%H%j$HF1$8?F%A%'%s%8%;%C%H$,@_Dj$5$l$^$9!#(B |
foozy@708 | 380 |
foozy@708 | 381 $B%3%_%C%H$,40N;$7$?$J$i!"(B |
foozy@708 | 382 Mercurial $B$d:n6HNN0h%G%#%l%/%H%j$N?F%A%'%s%8%;%C%H$N>pJs$r99?7$7$^$9!#(B |
foozy@708 | 383 $BBh#1?F$K$O%3%_%C%H$K$h$j?7$?$K@8@.$5$l$?%A%'%s%8%;%C%H$N<1JL;R$,@_Dj$5$l!"(B |
foozy@708 | 384 $BBh#2?F$K$O6u<1JL;R$,@_Dj$5$l$^$9!#(B |
foozy@708 | 385 $B%3%_%C%H8e$NLO<0?^$r!"(B |
foozy@708 | 386 $B?^(B~\ref{fig:concepts:wdir-after-commit}$B$K<($7$^$9!#(B |
foozy@708 | 387 Mercurial $B$O%3%_%C%H$N:]$K!"(B |
foozy@708 | 388 $B:n6HNN0h%G%#%l%/%H%jCf$N%U%!%$%k$K$O0l@Z?($l$:!"(B |
foozy@708 | 389 $BC1$K(B dirstate $B$N?F%A%'%s%8%;%C%H>pJs$r=q$-49$($k$@$1$G$9!#(B |
foozy@708 | 390 |
foozy@708 | 391 \subsection{Creating a new head} |
foozy@708 | 392 |
foozy@708 | 393 $B8=;~E@$G$N(B tip $B0J30$N%A%'%s%8%;%C%H$G$N:n6HNN0h%G%#%l%/%H%j$N99?7$O!"(B |
foozy@708 | 394 $BNI$/$"$k$3$H$G$9!#(B |
foozy@708 | 395 $BNc$($P!"(B |
foozy@708 | 396 $B@h=52PMKF|;~E@$G$N%W%m%8%'%/%H$N>uBV$rD4$Y$?$j!"(B |
foozy@708 | 397 $B$I$N%A%'%s%8%;%C%H$,%P%0$r;}$A9~$s$@$N$+$rD4$Y$k!"(B |
foozy@708 | 398 $B$H$$$C$?>u67$G$9!#(B |
foozy@708 | 399 $B$3$N$h$&$J>u67$G$N<+A3$J9T0Y$O!"(B |
foozy@708 | 400 $B:n6HNN0h%G%#%l%/%H%j$r4uK>$N%A%'%s%8%;%C%H$G99?7$7!"(B |
foozy@708 | 401 $BEv3:%A%'%s%8%;%C%H$r%3%_%C%H$7$?;~E@$G$N%U%!%$%k$NFbMF$r!"(B |
foozy@708 | 402 $B:n6HNN0h%G%#%l%/%H%jCf$N%U%!%$%k$r;2>H$7$F3NG'$9$k!"(B |
foozy@708 | 403 $B$H$$$&$b$N$G$7$g$&!#(B |
foozy@708 | 404 $B$3$N9T0Y$K$h$k1F6A$r!"(B |
foozy@708 | 405 $B?^(B~\ref{fig:concepts:wdir-pre-branch}$B$K<($7$^$9!#(B |
foozy@708 | 406 |
foozy@708 | 407 \begin{figure}[ht] |
foozy@708 | 408 \centering |
foozy@708 | 409 \grafix{wdir-pre-branch} |
foozy@708 | 410 \caption{The working directory, updated to an older changeset} |
foozy@708 | 411 \label{fig:concepts:wdir-pre-branch} |
foozy@708 | 412 \end{figure} |
foozy@708 | 413 |
foozy@708 | 414 $B:n6HNN0h%G%#%l%/%H%j$r0JA0$N%A%'%s%8%;%C%H$G99?7$7$?>l9g!"(B |
foozy@708 | 415 $B2?$i$+$NJQ99$r9T$C$F%3%_%C%H$7$?$J$i!"(B |
foozy@708 | 416 Mercurial $B$O$I$N$h$&$K?6Iq$&$N$G$7$g$&$+!)(B |
foozy@708 | 417 Mercurial $B$O$3$l$^$G$K@bL@$7$F$-$?>l9g$HF1$8$h$&$K?6Iq$$$^$9!#(B |
foozy@708 | 418 $B:n6HNN0h%G%#%l%/%H%j$N?F%A%'%s%8%;%C%H$,!"(B |
foozy@708 | 419 $B?75,$K:n@.$5$l$k%A%'%s%8%;%C%H$N?F$K$J$j$^$9!#(B |
foozy@708 | 420 $B?75,:n@.$5$l$k%A%'%s%8%;%C%H$O;R$r;}$?$:!"(B |
foozy@708 | 421 $B$h$C$F?7$?$J(B tip $B%A%'%s%8%;%C%H$H$J$j$^$9!#(B |
foozy@708 | 422 $B%3%_%C%H$N7k2L!"(B |
foozy@708 | 423 $B%j%]%8%H%j$K$O;R$r;}$?$J$$%A%'%s%8%;%C%H$,#2$DB8:_$7!"(B |
foozy@708 | 424 $B$3$l$i$O(B \emph{head} $B$H8F$P$l$^$9!#(B |
foozy@708 | 425 $B$3$N>u67$r?^(B~\ref{fig:concepts:wdir-branch} $B$K<($7$^$9!#(B |
foozy@708 | 426 |
foozy@708 | 427 \begin{figure}[ht] |
foozy@708 | 428 \centering |
foozy@708 | 429 \grafix{wdir-branch} |
foozy@708 | 430 \caption{After a commit made while synced to an older changeset} |
foozy@708 | 431 \label{fig:concepts:wdir-branch} |
foozy@708 | 432 \end{figure} |
foozy@708 | 433 |
foozy@708 | 434 \begin{note} |
foozy@708 | 435 Mercurial $B$KFk@w$_$NL5$$J}$O!"(B |
foozy@708 | 436 $B0z?tL5$7$G(B \hgcmd{pull} $B%3%^%s%I$r<B9T$7$?>l9g$N!"(B |
foozy@708 | 437 $BNI$/$"$k!V4V0c$$!W$r5$$KN1$a$FCV$$$F$/$@$5$$!#(B |
foozy@708 | 438 \hgcmd{pull} $B%3%^%s%I$N4pDlF0:n$O!"(B |
foozy@708 | 439 $B:n6HNN0h%G%#%l%/%H%j$N99?7$r(B\emph{$B9T$$$^$;$s(B}$B$N$G!"(B |
foozy@708 | 440 $B%j%]%8%H%j$X$N?75,%A%'%s%8%;%C%H$N<h$j9~$_$O9T$o$l$F$b!"(B |
foozy@708 | 441 $B:n6HNN0h%G%#%l%/%H%j$O(B \hgcmd{pull} $B%3%^%s%I<B9TA0$N$^$^$G$9!#(B |
foozy@708 | 442 $B:n6HNN0h%G%#%l%/%H%j$OEv3:;~E@$G$N(B tip $B$HF14|$7$F$$$J$$$?$a!"(B |
foozy@708 | 443 \hgcmd{pull} $B$N<B9T8e$K2?$i$+$NJQ99$r9T$$%3%_%C%H$7$?>l9g!"(B |
foozy@708 | 444 $B7k2L$H$7$F?7$?$J(B head $B$r@8@.$9$k$3$H$K$J$j$^$9!#(B |
foozy@708 | 445 |
foozy@708 | 446 $B3g8LIU$-$G!V4V0c$$!W$H=R$Y$?$N$O!"(B |
foozy@708 | 447 $B$3$N>u67$r=$I|$9$k$N$KI,MW$J$3$H$,!"(B |
foozy@708 | 448 \hgcmd{merge} $B$7$F$+$i(B \hgcmd{commit} $B$9$l$PNI$$$@$1$@$+$i$G$9!#(B |
foozy@708 | 449 $B8@$$49$($k$J$i!"(B |
foozy@708 | 450 $B$3$N$h$&$J%1!<%9$OA4A3?<9o$J>u67$G$O$J$$!"$H$$$&$3$H$G$9!#(B |
foozy@708 | 451 Mercurial $B$K47$l$F$$$J$$?M$O%S%C%/%j$9$k$+$b$7$l$^$;$s$,!D!#(B |
foozy@708 | 452 $B$3$N$h$&$J;vBV$r2sHr$9$kJL$NJ}K!$d!"(B |
foozy@708 | 453 $B=i?4<T$K$H$C$F0U30$K46$8$k$3$N$h$&$J?6$kIq$$$r(B Mercurial $B$,$H$kM}M3$K$D$$$F!"(B |
foozy@708 | 454 $B8e$[$I@bL@$7$?$$$H;W$$$^$9!#(B |
foozy@708 | 455 \end{note} |
foozy@708 | 456 |
foozy@708 | 457 \subsection{Merging heads} |
foozy@708 | 458 |
foozy@708 | 459 \hgcmd{merge} $B%3%^%s%I<B9T$N:]$K!"(B |
foozy@708 | 460 Mercurial $B$O:n6HNN0h%G%#%l%/%H%j$NBh#1?F$OJQ99$;$:$K!"(B |
foozy@708 | 461 $BBh#2?F$r%^!<%8BP>]$H$7$F;XDj$7$?%A%'%s%8%;%C%H$KJQ99$7$^$9!#(B |
foozy@708 | 462 $B$3$NMM;R$r?^(B~\ref{fig:concepts:wdir-merge}$B$K<($7$^$9!#(B |
foozy@708 | 463 |
foozy@708 | 464 \begin{figure}[ht] |
foozy@708 | 465 \centering |
foozy@708 | 466 \grafix{wdir-merge} |
foozy@708 | 467 \caption{Merging two heads} |
foozy@708 | 468 \label{fig:concepts:wdir-merge} |
foozy@708 | 469 \end{figure} |
foozy@708 | 470 |
foozy@708 | 471 $B#2$D$N%A%'%s%8%;%C%H$K$*$$$F4IM}$5$l$k%U%!%$%k$r%^!<%8$9$k$?$a!"(B |
foozy@708 | 472 Mercurial $B$O:n6HNN0h%G%#%l%/%H%j$rJQ99$7$^$9!#(B |
foozy@708 | 473 $BB?>/4JJX2=$7$F@bL@$9$k$H!"(B |
foozy@708 | 474 $BN>J}$N%A%'%s%8%;%C%H$N(B manifest $B$K4^$^$l$kA4$F$N%U%!%$%k$KBP$7$F!"(B |
foozy@708 | 475 $B35$M0J2<$N$h$&$K%^!<%8=hM}$,<B;\$5$l$^$9!#(B |
foozy@708 | 476 |
foozy@708 | 477 \begin{itemize} |
foozy@708 | 478 \item $B$I$A$i$N%A%'%s%8%;%C%H$G$b%U%!%$%k$rJQ99$7$F$$$J$$>l9g!"(B |
foozy@708 | 479 $B$=$N%U%!%$%k$KBP$7$F$O2?$b9T$o$l$^$;$s!#(B |
foozy@708 | 480 |
foozy@708 | 481 \item $B0lJ}$N%A%'%s%8%;%C%H$,JQ99$7$F$$$k%U%!%$%k$r!"(B |
foozy@708 | 482 $BB>J}$,JQ99$7$F$$$J$$>l9g!"(B |
foozy@708 | 483 $BJQ99FbMF$rH?1G$7$?%U%!%$%k$r:n6HNN0h%G%#%l%/%H%j$KJ#@=$7$^$9!#(B |
foozy@708 | 484 |
foozy@708 | 485 \item $B0lJ}$N%A%'%s%8%;%C%H$,:o=|$7$?%U%!%$%k$O!"(B |
foozy@708 | 486 $BB>J}$N:o=|$K4X$o$i$:!"(B |
foozy@708 | 487 $B:n6HNN0h%G%#%l%/%H%j$+$i:o=|$5$l$^$9!#(B |
foozy@708 | 488 |
foozy@708 | 489 \item $B0lJ}$N%A%'%s%8%;%C%H$,:o=|$7$?%U%!%$%k$r!"(B |
foozy@708 | 490 $BB>J}$,JQ99$7$F$$$?>l9g!"(B |
foozy@708 | 491 $B%U%!%$%k$NJQ99$H:o=|$N$I$A$i$r:NMQ$9$k$N$+!"(B |
foozy@708 | 492 $B%f!<%6$KBP$7$FLd$$9g$o$;$^$9!#(B |
foozy@708 | 493 |
foozy@708 | 494 \item $BN>J}$N%A%'%s%8%;%C%H$,%U%!%$%k$rJQ99$7$F$$$k>l9g!"(B |
foozy@708 | 495 $BFbMF$N%^!<%87k2L$r%U%!%$%k$KJ]B8$9$k$?$a$K!"(B |
foozy@708 | 496 $B30It%^!<%8%W%m%0%i%`$,5/F0$5$l$^$9!#(B |
foozy@708 | 497 $B$3$N>l9g!"%f!<%6$K$h$kBPOCE*A`:n$,I,MW$K$J$k$+$b$7$l$^$;$s!#(B |
foozy@708 | 498 |
foozy@708 | 499 \item $B0lJ}$N%A%'%s%8%;%C%H$,JQ99$7$F$$$k%U%!%$%k$r!"(B |
foozy@708 | 500 $BB>J}$,2~L>$7$?$jJ#@=$7$?$j$7$F$$$k>l9g!"(B |
foozy@708 | 501 $BJQ99FbMF$,?7$7$$%U%!%$%k$K$bEAGE$9$k$h$&$K$7$^$9!#(B |
foozy@708 | 502 |
foozy@708 | 503 \end{itemize} |
foozy@708 | 504 |
foozy@708 | 505 $BB>$K$b:Y$+$$OC(B---$BFC$K%^!<%8$K4X$7$F$O:Y$+$$OC$,Bt;3$"$j$^$9(B---$B$,$"$j$^$9$,!"(B |
foozy@708 | 506 $B%^!<%8$K4XO"$9$k0lHLE*$J?6$kIq$$$N<oN`$O$3$NDxEY$G$9!#(B |
foozy@708 | 507 $B$4Mw$NMM$K!"KX$I$N>u67$,A4$/<+F0E*$K=hM}$5$l$^$9$7!"(B |
foozy@708 | 508 $B<B:]$N%^!<%8$G$bKX$I$N>l9g!"(B |
foozy@708 | 509 $B>WFM2r>C$N$?$a$NBPOCE*$JF~NOL5$7$K<+F0E*$K40N;$7$^$9!#(B |
foozy@708 | 510 |
foozy@708 | 511 $B%^!<%88e$N%3%_%C%H$N:]$K=hM}$5$l$k;vJA$r9M$($k>l9g$O!"(B |
foozy@708 | 512 $B@h$K$b=R$Y$^$7$?$,!"(B |
foozy@708 | 513 $B:n6HNN0h%G%#%l%/%H%j$r(B |
foozy@708 | 514 ``$B%3%_%C%H$7$h$&$H$7$F$$$k%A%'%s%8%;%C%H(B'' |
foozy@708 | 515 $B$HB*$($k$H$o$+$j$d$9$$$G$7$g$&!#(B |
foozy@708 | 516 \hgcmd{merge} $B%3%^%s%I$,40N;$7$?8e$N:n6HNN0h%G%#%l%/%H%j$O!"(B |
foozy@708 | 517 $B?F%A%'%s%8%;%C%H$r#2$D;}$A!"(B |
foozy@708 | 518 $B%3%_%C%H$K$h$C$F@8@.$5$l$k?7$?$J%A%'%s%8%;%C%H$O!"(B |
foozy@708 | 519 $B$3$l$i$r?F%A%'%s%8%;%C%H$H$7$^$9!#(B |
foozy@708 | 520 |
foozy@708 | 521 Mercurial $B$G$O7+$jJV$7%^!<%8$9$k$3$H$,2DG=$G$9$,!"(B |
foozy@708 | 522 Mercurial $B$O$j%S%8%g%s$*$h$S:n6HNN0h%G%#%l%/%H%j$NN>J}$KBP$7$F!"(B |
foozy@708 | 523 $B0lEY$K#2$D$N?F%j%S%8%g%s$7$+DI@W$G$-$J$$$?$a!"(B |
foozy@708 | 524 $B8D!9$N%^!<%8$NETEY%3%_%C%H$9$kI,MW$,$"$j$^$9!#(B |
foozy@708 | 525 $BJ#?t$N%A%'%s%8%;%C%H$N0l3g%^!<%8$O5;=QE*$K$O2DG=$G$7$g$&$,!"(B |
foozy@708 | 526 $B%f!<%6$,:.Mp$7$?$j!"(B |
foozy@708 | 527 $B$R$I$/Mp;($J%^!<%8$,9T$o$l$k$G$"$m$&$3$H$OL\$K8+$($F$$$^$9!#(B |
foozy@708 | 528 |
foozy@708 | 529 \section{Other interesting design features} |
foozy@708 | 530 |
foozy@708 | 531 $B$3$l$^$G$N@a$G!"(B |
foozy@708 | 532 Mercurial $B$,?.Mj@-$H@-G=$XCm0U?<$/G[N8$rJ'$C$F$$$k$3$H$r@bL@$9$k$?$a$K!"(B |
foozy@708 | 533 $B@_7W$K$*$1$k:G$b=EMW$JB&LL$N4v$D$+$K>GE@$rEv$F$F$-$^$7$?!#(B |
foozy@708 | 534 $B$7$+$7!"(B |
foozy@708 | 535 $B>\:Y;v9`$X$NG[N8$O!"(B |
foozy@708 | 536 $B$3$l$@$1$KN1$^$j$^$;$s!#(B |
foozy@708 | 537 Mercurial $B$N9=@.$K$*$$$FI.<T$N8D?ME*$J6=L#$r$=$=$kB&LL$,B??t$"$j$^$9!#(B |
foozy@708 | 538 $B$3$l$^$G$N(B``big ticket''$B$JB&LL$H$OJL$K!"(B |
foozy@708 | 539 $B$$$/$D$+$rA*$s$G>\:Y$r@bL@$7$h$&$H;W$$$^$9$N$G!"(B |
foozy@708 | 540 $B$3$l$i$K6=L#$,$"$l$P!"(B |
foozy@708 | 541 $BNI$$@_7W$N%7%9%F%`$N9M0F$N:]$KM-MQ$J!"(B |
foozy@708 | 542 $B$h$jNI$$H/A[$rF@$k$3$H$,$G$-$k$G$7$g$&!#(B |
foozy@708 | 543 |
foozy@708 | 544 \subsection{Clever compression} |
foozy@708 | 545 |
foozy@708 | 546 Mercurial $B$O%9%J%C%W%7%g%C%H$H:9J,$N$=$l$>$l$KBP$7$F!"(B |
foozy@708 | 547 $B05=L$,M-8z$G$"$k>l9g$K$O05=L7A<0$GJ]B8$7$^$9!#(B |
foozy@708 | 548 Mercurial $B$O>o$K%9%J%C%W%7%g%C%H$J$$$7:9J,$N05=L$r(B\emph{$B;n9T(B}$B$7$^$9$,!"(B |
foozy@708 | 549 $BHs05=L$J>uBV$h$j$b%5%$%:$,>.$5$$>l9g$K8B$j!"(B |
foozy@708 | 550 $B05=L7A<0$G$NJ]B8$r9T$$$^$9!#(B |
foozy@708 | 551 |
foozy@708 | 552 $B$3$N$3$H$O!"(B |
foozy@708 | 553 $BNc$($P(B \texttt{zip} $B%"!<%+%$%V$d(B JPEG $B2hA|$N$h$&$K!"(B |
foozy@708 | 554 $B85!905=L7A<0$NFbMF$r;}$D%U%!%$%k$N3JG<$N:]$K!"(B |
foozy@708 | 555 Mercurial $B$,(B``$BE,@Z$J=hCV(B''$B$r9T$&$3$H0UL#$7$^$9!#(B |
foozy@708 | 556 $B$3$l$i$N%U%!%$%k$O(B Mercurial $B$K$h$k#2EYL\$N05=L$N:]$K$O!"(B |
foozy@708 | 557 $B:G=i$N%5%$%:$h$j$bBg$-$/$J$k$N$,0lHLE*$G$9$N$G!"(B |
foozy@708 | 558 Mercurial $B$O(B \texttt{zip} $B$d(B JPEG $B%U%!%$%k$r$=$N$^$^J]B8$7$^$9!#(B |
foozy@708 | 559 |
foozy@708 | 560 $B05=L7A<0$N%U%!%$%k$N%j%S%8%g%s4V$N:9J,$O!"(B |
foozy@708 | 561 $B0lHLE*$K$O%9%J%C%W%7%g%C%H$h$j$bBg$-$/$J$j$^$9$N$G!"(B |
foozy@708 | 562 $B$3$N>l9g$G$b(B Mercurial $B$O(B``$BE,@Z$J=hCV(B''$B$r9T$$$^$9!#(B |
foozy@708 | 563 $B%U%!%$%k$N%9%J%C%W%7%g%C%H$=$N$b$N$rJ]B8$9$k>l9g$N5vMFHO0O$r!"(B |
foozy@708 | 564 $B:9J,>pJs$N%5%$%:$,D6$($k$3$H$,H=L@$7$?>l9g!"(B |
foozy@708 | 565 Mercurial $B$O%9%J%C%W%7%g%C%H$rJ]B8$7$^$9$N$G!"(B |
foozy@708 | 566 $B7+$jJV$7$K$J$j$^$9$,!"(B |
foozy@708 | 567 $B:9J,$N$_$rJ];}$9$k%b%G%k$h$j$b%G%#%9%/MFNL$,@aLs$G$-$^$9!#(B |
foozy@708 | 568 |
foozy@708 | 569 \subsubsection{Network recompression} |
foozy@708 | 570 |
foozy@708 | 571 Mercurial $B$O%G%#%9%/$X$NMzNrJ]B8$N:]$K!"(B |
foozy@708 | 572 $B@-G=$KBP$9$k05=LN($,$=$3$=$3NI9%$G%P%i%s%9$N<h$l$F$$$k(B``$B<}=L(B'' |
foozy@708 | 573 $B!J(Bdeflate$B!K05=L%"%k%4%j%:%`(B |
foozy@708 | 574 $B!JCxL>$J(B \texttt{zip} $B%"!<%+%$%V7A<0$,F1Ey$N$b$N$r;HMQ$7$F$$$^$9!K(B |
foozy@708 | 575 $B$r;HMQ$7$F$$$^$9!#(B |
foozy@708 | 576 $B$7$+$7!"(B |
foozy@708 | 577 $B%M%C%H%o!<%/1[$7$N%G!<%?E>Aw$N:]$K$O!"(B |
foozy@708 | 578 Mercurial $B$OMzNr%G!<%?$r05=L$7$^$;$s!#(B |
foozy@708 | 579 |
foozy@708 | 580 $B%M%C%H%o!<%/@\B3$,(B HTTP $B7PM3$N>l9g!"(B |
foozy@708 | 581 Mercurial $B$O%G!<%?DL?.$N7PO)A4BN$r!"(B |
foozy@708 | 582 $B$h$jNI$$05=LN($rF@$i$l$k05=L%"%k%4%j%:%`(B |
foozy@708 | 583 $B!J(B\texttt{bzip2} $B05=L$H$7$F9-$/;HMQ$5$l$F$$$k(B |
foozy@708 | 584 Burrows-Wheeler $B%"%k%4%j%:%`!K$G:F05=L$7$^$9!#(B |
foozy@708 | 585 $B%j%S%8%g%s>pJs8DJL$N05=L$G$O$J$/!"(B |
foozy@708 | 586 \texttt{bzip2} $B%"%k%4%j%:%`$HDL?.7PO)A4BN$N05=L$H$$$&AH$_9g$o$;$K$9$k$3$H$G!"(B |
foozy@708 | 587 $BE>Aw%G!<%?NL$rBgI}$KDc8:$9$k$3$H$,$G$-$^$9$N$G!"(B |
foozy@708 | 588 $BKX$IA4$F$N%M%C%H%o!<%/7ABV$K$*$$$FNI9%$J@-G=$rH/4x$G$-$^$9!#(B |
foozy@708 | 589 |
foozy@708 | 590 $B!J(B\command{ssh} $B$G$N@\B3$N>l9g!"(B |
foozy@708 | 591 \command{ssh} $B<+?H$,05=L$r9T$&$3$H$,$G$-$k$N$G!"(B |
foozy@708 | 592 Mercurial $B$O@\B37PO)$N:F05=L$r(B\emph{$B9T$$$^$;$s(B} |
foozy@708 | 593 \footnote{$BLuCm(B: $BLu<T$N7P83$G$O!"(B |
foozy@708 | 594 $B%5!<%PB&$N(B Python $B$,(B zlib $B$r;HMQ$G$-$J$$>l9g!"(B |
foozy@708 | 595 ssh $B$G$N(B push/pull $B$,5!G=$7$J$+$C$?$N$G!"(B |
foozy@708 | 596 Mercurial $B$N%5%$%H$K$bF1MM$N5-=R$,$"$j$^$9$,!"(B |
foozy@708 | 597 $B$3$N5-=R$O>/!9DTjm$,9g$o$J$$5$$,$7$^$9!#(B}$B!K(B |
foozy@708 | 598 |
foozy@708 | 599 \subsection{Read/write ordering and atomicity} |
foozy@708 | 600 |
foozy@708 | 601 $BIT40A4$J=q$-9~$_FbMF$,MxMQ$5$l$k$3$H$N$J$$$h$&$KJ]>Z$9$k>e$G$O!"(B |
foozy@708 | 602 $B%U%!%$%k$X$NDI2C=q$-9~$_$@$1$,A4$F$G$O$"$j$^$;$s!#(B |
foozy@708 | 603 $B$b$&0lEY!"?^(B~\ref{fig:concepts:metadata}$B$r8+$F$$$?$@$1$l$P$o$+$k$h$&$K!"(B |
foozy@708 | 604 changelog $BCf$N%j%S%8%g%sMWAG$O(B manifest $BCf$N%j%S%8%g%sMWAG$r!"(B |
foozy@708 | 605 manifest $BCf$N%j%S%8%g%sMWAG$O(B filelog $BCf$N%j%S%8%g%sMWAG$r;X$7$F$$$^$9!#(B |
foozy@708 | 606 $B$3$N3,AX9=B$$O0U?^E*$J$b$N$J$N$G$9!#(B |
foozy@708 | 607 |
foozy@708 | 608 $B%G!<%?=q$-9~$_$N:]$K$O!"(B |
foozy@708 | 609 filelog $B$*$h$S(B manifest $B$X$N=q$-9~$_$G%H%i%s%6%/%7%g%s$,3+;O$5$l!"(B |
foozy@708 | 610 $B$3$l$i$X$N=q$-9~$_$,40N;$9$k$^$G$O(B |
foozy@708 | 611 changelog $B$X$N=q$-9~$_$O9T$o$l$^$;$s!#(B |
foozy@708 | 612 $BFI$_9~$_$N:]$K$O!"(B |
foozy@708 | 613 changelog $B$r5/E@$H$7$F(B manifest$B!"(Bfilelog $B$N=g=x$GFI$_9~$_$r9T$$$^$9!#(B |
foozy@708 | 614 |
foozy@708 | 615 changelog $B$X$N=q$-9~$_$K@hN)$C$F!"(B |
foozy@708 | 616 $B>o$K(B filelog $B$*$h$S(B manifest $B$X$N=q$-9~$_$,40N;$7$F$$$k$N$G!"(B |
foozy@708 | 617 changelog $B$+$i$NIT40A4$J(B manifest $B$X$N;2>H$rFI$_9~$`$3$H$b!"(B |
foozy@708 | 618 manifest $B$+$i$NIT40A4$J(B filelog $B$X$N;2>H$rFI$_9~$`$3$H$b$"$j$^$;$s!#(B |
foozy@708 | 619 |
foozy@708 | 620 \subsection{Concurrent access} |
foozy@708 | 621 |
foozy@708 | 622 $BFI$_=q$-<j=g$HIT2DJ,@-J]>Z$K$h$j!"(B |
foozy@708 | 623 $BNc$(FI$_9~$_$N:GCf$K=q$-9~$_$,9T$o$l$k$H$7$F$b!"(B |
foozy@708 | 624 Mercurial $B$OFI$_9~$_$K$*$1$k%j%]%8%H%j$N(B\emph{$BGSB>(B}$B$rI,MW$H$7$^$;$s!#(B |
foozy@708 | 625 $B$3$NFC@-$OBg5,LO2=$N:]$KHs>o$K1F6A$,$"$j$^$9!#(B |
foozy@708 | 626 $BG$0U$N?t$N(B Mercurial $B%W%m%;%9$,!"(B |
foozy@708 | 627 $B=q$-=P$7%W%m%;%9$NM-L5$K4X$o$i$:!"(B |
foozy@708 | 628 $B%j%]%8%H%j$KBP$7$FF1;~FI$_=P$7$r0BA4$K9T$&$3$H$,$G$-$^$9!#(B |
foozy@708 | 629 |
foozy@708 | 630 $BFI$_=P$7$K$*$1$kGSB>ITMW$NFC@-$O!"(B |
foozy@708 | 631 $BB?%f!<%6%7%9%F%`>e$G%j%]%8%H%j$r8x3+$7$F$$$k:]$K!"(B |
foozy@708 | 632 $BJ#@=!J(B\hgcmd{clone}$B!K$dJQ99$N<h$j9~$_!J(B\hgcmd{pull}$B!K$N$?$a$K!"(B |
foozy@708 | 633 $BB>$N%f!<%6$K!J$"$J$?$N!K(B |
foozy@708 | 634 $B%j%]%8%H%j$X$N(B\emph{$B=q$-9~$_(B}$B$r5v2D$9$kI,MW(B\footnote{$BLuCm(B: |
foozy@708 | 635 $B%W%m%;%94V$GGSB>$r9T$&>l9g!"(B |
foozy@708 | 636 $BGSB>MQ$N%U%!%$%k$rMQ$$$k$+!"(B |
foozy@708 | 637 $B%G%#%l%/%H%j$=$N$b$N$KGSB>@_Dj$r9T$&$N$,0lHLE*$G$9$,!"(B |
foozy@708 | 638 $B$=$N$?$a$K$O=q$-9~$_8"8B$,I,MW$G$9!#(B} |
foozy@708 | 639 $B$,L5$$$3$H$r0UL#$7$^$9!#(B |
foozy@708 | 640 $BFI$_=P$7$r9T$&B>$N%f!<%6$K$O!"(B |
foozy@708 | 641 \emph{$BFI$_=P$7(B}$B8"8B$N$_$N8x3+$G:Q$_$^$9(B |
foozy@708 | 642 $B!J$3$N@-<A$O9=@.4IM}%7%9%F%`$K6&DL$NFC@-$G$O(B\emph{$B$"$j$^$;$s(B}$B$N$G!"(B |
foozy@708 | 643 $B0lHLE*$J$b$N$@$H$O;W$o$J$$$G$/$@$5$$!#(B |
foozy@708 | 644 $BB?$/$N9=@.4IM}%7%9%F%`$G$O!"(B |
foozy@708 | 645 $BFI$_=P$7%f!<%6$G$"$C$F$b!"(B |
foozy@708 | 646 $B0BA4$JFI$_=P$7$N$?$a$K$O%j%]%8%H%j$rGSB>$9$k8"8B$,I,MW$G$"$j!"(B |
foozy@708 | 647 $B$=$N$?$a$K$O:GDc$G$b#1$D$N%G%#%l%/%H%j$KBP$9$k=q$-9~$_8"8B$,I,MW$J$?$a!"(B |
foozy@708 | 648 $B0BA4@-$H4IM}>e$GLLE]$JLdBj$N860x$H$J$jF@$^$9!#!K!#(B |
foozy@708 | 649 |
foozy@708 | 650 Mercurial $B$,GSB>$r9T$&$N$O!"(B |
foozy@708 | 651 $B0lEY$K#1$D$N%W%m%;%9$N$_$,%j%]%8%H%j$K=q$-9~$`$N$rJ]>Z>l9g$@$1$G$9(B |
foozy@708 | 652 $B!JGSB>$KE,$5$J$$$H8@$o$l$k(B NFS $B$N$h$&$J%U%!%$%k%7%9%F%`(B\footnote{$BLuCm(B: |
foozy@708 | 653 $B9=@.4IM}%7%9%F%`$K8B$i$:!"(B |
foozy@708 | 654 $BGSB>$N<B8=$K(B <code>creat(EXCL)</code> |
foozy@708 | 655 $B$G@8@.$5$l$k%U%!%$%k$r;HMQ$7$F$$$k$?$a$K!"(B |
foozy@708 | 656 NFS $B$G$OE,@Z$KGSB>$G$-$J$$%W%m%0%i%`$,B??tB8:_$7$^$9!#(B |
foozy@708 | 657 }$B$G$"$C$F$b!"(B |
foozy@708 | 658 $B0BA4$KGSB>$G$-$k;EAH$_$rMQ$$$F$$$^$9!K!#(B |
foozy@708 | 659 $B%j%]%8%H%j$,B>$N%W%m%;%9$K$h$jGSB>$5$l$F$$$k>l9g!"(B |
foozy@708 | 660 $B=q$-9~$_$r9T$&%W%m%;%9$O!"(B |
foozy@708 | 661 $B%j%]%8%H%j$NGSB>$,2r=|$5$l$k$^$G;C$/BT$C$F:FEYGSB>$r;n9T$7$^$9$,!"(B |
foozy@708 | 662 $BD9;~4V$KEO$C$FGSB>$5$l$?$^$^$N>l9g$O!"(B |
foozy@708 | 663 $B;~4V@Z$l$H$_$J$5$l$^$9!#(B |
foozy@708 | 664 $B$=$N$?$a!"(B |
foozy@708 | 665 $BNc$($P?MCN$l$:%7%9%F%`$,Dd;_$7$?$H$7$F$b!"(B |
foozy@708 | 666 $B<+F02=$5$l$?F|<!=hM}$,Dd;_$7$?$^$^$K$J$C$?$j!"(B |
foozy@708 | 667 $BDd;_$7$J$$=hM}$,<!!9$H@Q$_>e$,$C$?$j$9$k$3$H$O$"$j$^$;$s!#(B |
foozy@708 | 668 |
foozy@708 | 669 \subsubsection{Safe dirstate access} |
foozy@708 | 670 |
foozy@708 | 671 dirstate $B7A<0%U%!%$%k$+$i$N%j%S%8%g%s>pJs$NFI$_=P$7$K:]$7$F!"(B |
foozy@708 | 672 Mercurial $B$O%U%!%$%k$KBP$9$kGSB>$r9T$C$?$j$O$;$:!"(B |
foozy@708 | 673 $B=q$-9~$_$N:]$K$N$_GSB>$r9T$$$^$9!#(B |
foozy@708 | 674 $BIT40A4$J=q$-9~$_$r(B |
foozy@708 | 675 dirstate $B7A<0%U%!%$%k$+$iFI$_=P$7$F$7$^$&$3$H$r2sHr$9$k$?$a!"(B |
foozy@708 | 676 Mercurial $B$O(B |
foozy@708 | 677 $BBP>](B dirstate $B7A<0%U%!%$%k$HF1$8%G%#%l%/%H%j$KFCM-$NL>A0$G%U%!%$%k$r=q$-=P$7!"(B |
foozy@708 | 678 $B$3$N0l;~%U%!%$%k$r(B \filename{dirstate} |
foozy@708 | 679 $B%U%!%$%k$X$HIT2DJ,$JA`:n$G2~L>$7$^$9!#(B |
foozy@708 | 680 $B$=$N$?$a!"(B |
foozy@708 | 681 \filename{dirstate} $B$H$$$&!VL>A0$N!W%U%!%$%k$O!"(B |
foozy@708 | 682 $BIT40A4$J=q$-9~$_$r;}$?$J$$40A4$JFbMF$G$"$k$3$H$,J]>Z$5$l$^$9!#(B |
foozy@708 | 683 |
foozy@708 | 684 \subsection{Avoiding seeks} |
foozy@708 | 685 |
foozy@708 | 686 $BHf3SE*BgNL$N%G!<%?FI$_9~$_=hM}$KBP$7$F$9$i!"(B |
foozy@708 | 687 $B%G%#%9%/%X%C%I$N%7!<%/$OHs>o$K%3%9%H$,9b$/$D$/$?$a!"(B |
foozy@708 | 688 Mercurial $B$N@-G=3NJ]$N=EMW$JE@$O!"(B |
foozy@708 | 689 $B%G%#%9%/%X%C%I$N%7!<%/$r6KNO2sHr$9$k$3$H$K$"$j$^$9!#(B |
foozy@708 | 690 |
foozy@708 | 691 $BNc$($P(B dirstate $B7A<0$N$h$&$J%G!<%?$,!"(B |
foozy@708 | 692 $BC10l$N%U%!%$%k$KJ]B8$5$l$kM}M3$,$3$3$K$"$j$^$9!#(B |
foozy@708 | 693 Mercurial $B$K$h$j9=@.4IM}$5$l$k%G%#%l%/%H%j$4$H$K(B |
foozy@708 | 694 \filename{dirstate} $B%U%!%$%k$,B8:_$9$k>l9g$O!"(B |
foozy@708 | 695 $B%G%#%l%/%H%j$4$H$K%G%#%9%/%X%C%I$N%7!<%/$,H/@8$7F@$^$9!#(B |
foozy@708 | 696 $B$=$N$h$&$J%G%#%9%/%X%C%I$N%7!<%/$r2sHr$9$k$?$a$K!"(B |
foozy@708 | 697 Mercurial $B$O0lEY$KC10l$N(B |
foozy@708 | 698 \filename{dirstate} $B%U%!%$%kA4BN$rFI$_9~$_$^$9(B\footnote{$BLuCm(B: |
foozy@708 | 699 $B%G%#%9%/$NMxMQ$,?J$s$G6u$-%V%m%C%/$,CGJR2=$5$l$?>l9g!"(B |
foozy@708 | 700 $BITO"B3$J%V%m%C%/$,3d$jEv$F$i$l$^$9$+$i!"(B |
foozy@708 | 701 $BI,$:$7$b!VC10l%U%!%$%k!W!a!V%X%C%I$N%7!<%/$,2sHr2DG=!W$G$O$"$j$^$;$s$,!"(B |
foozy@708 | 702 $B>/$J$/$H$b!V%X%C%I$N%7!<%/$rDc8:!W$9$k$3$H$O2DG=$G$9!#(B}$B!#(B |
foozy@708 | 703 |
foozy@708 | 704 $B%m!<%+%k%9%H%l!<%8$K$*$1$k%j%]%8%H%j$NJ#@=$N:]$K$O!"(B |
foozy@708 | 705 Mercurial $B$O(B``$B=q$-=P$7;~J#@=(B''$B$N;EAH$_$b;HMQ$7$^$9!#(B |
foozy@708 | 706 $BJ#@=85%j%]%8%H%j$+$iJ#@=@h$K8D!9$N(B revlog $B%U%!%$%k$rJ#@=$9$kBe$o$j$K!"(B |
foozy@708 | 707 ``$B%O!<%I%j%s%/(B''$B$r;HMQ$9$k$3$H$G!"(B |
foozy@708 | 708 ``$B#2$D$N%U%!%$%kL>$,F10lFbMF$N%U%!%$%k$r;2>H(B'' |
foozy@708 | 709 $B$9$k$3$H$r<jAa$/I=L@$7$^$9!#(B |
foozy@708 | 710 $B0lJ}$N(B revlog $B%U%!%$%k$K=q$-9~$_$r9T$&:]$K$O!"(B |
foozy@708 | 711 Mercurial $B$OEv3:%U%!%$%k$N%O!<%I%j%s%/$r3NG'$7$^$9!#(B |
foozy@708 | 712 $BEv3:%U%!%$%k$,J#?t$N%j%]%8%H%j$+$i;2>H$5$l$$$F$$$k>l9g!"(B |
foozy@708 | 713 Mercurial $B$OEv3:%j%]%8%H%jMQ$K(B revlog $B$N?7$?$JJ#@=$r:n@.$7$^$9!#(B |
foozy@708 | 714 |
foozy@708 | 715 $B2??M$+$N9=@.4IM}%D!<%k$N3+H/<T$K$h$j!"(B |
foozy@708 | 716 $B$3$NJ}K!(B--- |
foozy@708 | 717 $B40A4$K%j%]%8%H%j8GM-$N$b$N$H$7$F%U%!%$%k$rJ#@=$9$k(B--- |
foozy@708 | 718 $B$,%G%#%9%/;HMQNL:o8:$K$=$l$[$I8z2LE*$G$J$$$H$N;XE&$r<u$1$F$$$^$9!#(B |
foozy@708 | 719 $B$=$l$O;v<B$G$O$"$j$^$9$,!"(B |
foozy@708 | 720 $B%G%#%9%/MFNL$N3NJ]$O0B2A$G$"$j!"(B |
foozy@708 | 721 OS $B$X$NJ#@=MW5a$rCY1d$9$k$3$H$K$h$j9b$$@-G=$rF@$k$3$H$,$G$-$^$9!#(B |
foozy@708 | 722 $BJL$J;EAH$_$rMQ$$$k>l9g!"(B |
foozy@708 | 723 $B@-G=$,Dc2<$7%=%U%H%&%'%"$NJ#;($5$,A}$7$^$9$N$G!"(B |
foozy@708 | 724 $BF|!9$NMxMQ$K$*$1$k(B``$BBN46(B''$B$KHs>o$K1F6A$r5Z$\$7$^$9(B\footnote{$BLuCm(B: |
foozy@708 | 725 $B$D$^$j!"(B |
foozy@708 | 726 Mercurial $B$G$N%O!<%I%j%s%/$N;HMQ$O!"(B |
foozy@708 | 727 $BJ#@=$r9T$&$3$H$K$h$k%G%#%9%/%X%C%I$N%7!<%/$rDc8:$9$k$N$,<g4c$G!"(B |
foozy@708 | 728 $B%G%#%9%/;HMQNL$NDc8:$,<g4c$G$O$J$$!"(B |
foozy@708 | 729 $B$H$$$&$3$H$G$9!#(B}$B!#(B |
foozy@708 | 730 |
foozy@708 | 731 \subsection{Other contents of the dirstate} |
foozy@708 | 732 \label{sec:concepts:dirstate} |
foozy@708 | 733 |
foozy@708 | 734 $B%U%!%$%k$NJQ99$N:]$N(B Mercurial $B$X$NDLCN$,I,MW$J$$$3$H$+$i!"(B |
foozy@708 | 735 $B%U%!%$%kJQ99$NM-L5$r8zN(E*$KH=Dj$9$k$?$a$K!"(B |
foozy@708 | 736 $BFCJL$J>pJs$r3JG<$7$?(B dirstate $B7A<0%U%!%$%k$r;HMQ$7$^$9!#(B |
foozy@708 | 737 $B:n6HNN0h%G%#%l%/%H%jCf$NA4$F$N%U%!%$%k$KBP$7$F!"(B |
foozy@708 | 738 Mercurial $B$O%U%!%$%k$N:G=*JQ99F|;~$H$=$N;~E@$G$N%5%$%:$r(B |
foozy@708 | 739 dirstate $B7A<0%U%!%$%k$K3JG<$7$F$$$^$9!#(B |
foozy@708 | 740 |
foozy@708 | 741 \hgcmd{add}$B!"(B\hgcmd{remove}$B!"(B\hgcmd{rename} $B$J$$$7(B |
foozy@708 | 742 \hgcmd{copy} $B$rL@<(E*$K;HMQ$7$?>l9g!"(B |
foozy@708 | 743 Mercurial $B$O$3$N>pJs$r99?7$7$^$9$N$G!"(B |
foozy@708 | 744 $B%3%_%C%H;~$N?6$kIq$$$rFCDj$G$-$^$9!#(B |
foozy@708 | 745 |
foozy@708 | 746 Mercurial $B$,:n6HNN0h%G%#%l%/%H%jCf$N%U%!%$%k$r3NG'$9$k>l9g!"(B |
foozy@708 | 747 $B:G=i$K%U%!%$%k$NJQ99F|;~$r3NG'$7$^$9!#(B |
foozy@708 | 748 $BJQ99F|;~$,F10l$J$i$P!"%U%!%$%k$OJQ99$5$l$F$$$J$$H&$G$9!#(B |
foozy@708 | 749 $B%U%!%$%k%5%$%:$,0[$J$C$F$$$k$J$i$P!"%U%!%$%k$OJQ99$5$l$F$$$kH&$G$9!#(B |
foozy@708 | 750 $BJQ99F|;~$,0[$J$C$F$$$k$N$K%U%!%$%k%5%$%:$,F10l$N>l9g$K$N$_!"(B |
foozy@708 | 751 $B%U%!%$%k$NFbMF$,0[$J$C$F$$$k$+H]$+$rH=Dj$9$k$?$a$K(B |
foozy@708 | 752 Mercurial $B$O<B:]$K%U%!%$%k$NFbMF$rFI$_9~$_$^$9(B\footnote{$BLuCm(B: |
foozy@708 | 753 Windows $B4D6-$G$N2~9TJQ49$r9T$C$F$$$k$h$&$J>l9g!"(B |
foozy@708 | 754 $B%P%$%J%jHG$H%=!<%9HG$G%U%!%$%k%5%$%:$N;;=P<j=g$K0c$$$,$"$k$i$7$/!"(B |
foozy@708 | 755 \hgcmd{diff} $B$,2?$b=PNO$7$J$$$N$K!"(B |
foozy@708 | 756 \hgcmd{state} $B$G$O!VJQ99!W07$$$5$l$k$3$H$,5)$K$"$j$^$9!#(B}$B!#(B |
foozy@708 | 757 $B$3$N$h$&$K6O$+$JDI2C>pJs$r3JG<$9$k$3$H$G!"(B |
foozy@708 | 758 Mercurial $B$,I,MW$H$9$kFI$_9~$_%G!<%?NL$r7`E*$K8:$i$9$3$H$,$G$-!"(B |
foozy@708 | 759 $BB>$N9=@.4IM}%7%9%F%`$HHf3S$7$FBgI}$K@-G=$,2~A1$5$l$F$$$^$9!#(B |
foozy@708 | 760 |
foozy@708 | 761 %%% Local Variables: |
foozy@708 | 762 %%% mode: latex |
foozy@708 | 763 %%% TeX-master: "00book" |
foozy@708 | 764 %%% End: |