comparison ja/concepts.tex @ 835:8a3041e6f3cb

reflect comments by Hiroshi Someya.
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Sat, 11 Jul 2009 19:25:35 +0900
parents 1a30d2627512
children
comparison
equal deleted inserted replaced
834:896ab6eaf1c6 835:8a3041e6f3cb
467 467
468 %The dirstate stores parent information for more than just book-keeping 468 %The dirstate stores parent information for more than just book-keeping
469 %purposes. Mercurial uses the parents of the dirstate as \emph{the 469 %purposes. Mercurial uses the parents of the dirstate as \emph{the
470 % parents of a new changeset} when you perform a commit. 470 % parents of a new changeset} when you perform a commit.
471 471
472 dirstate$B$O4IM}L\E*0U30$N>pJs$bJ]B8$7$F$$$k!%(B Mercurial$B$O!$%3%_%C%H$N:]$K(B 472 dirstate$B$O4IM}L\E*0J30$N>pJs$bJ]B8$7$F$$$k!%(B Mercurial$B$O!$%3%_%C%H$N:]$K(B
473 dirstate$B$NN>?F$r(B\emph{$B?7$?$J%A%'%s%8%;%C%H$NN>?F(B}$B$H$7$FMQ$$$k!%(B 473 dirstate$B$NN>?F$r(B\emph{$B?7$?$J%A%'%s%8%;%C%H$NN>?F(B}$B$H$7$FMQ$$$k!%(B
474 474
475 \begin{figure}[ht] 475 \begin{figure}[ht]
476 \centering 476 \centering
477 \includegraphics{wdir} 477 \includegraphics{wdir}
604 $B$F%3%_%C%H$7$h$&$H$9$k$H!$%o!<%-%s%0%G%#%l%/%H%j$,8=:_$N(Btip$B$KF14|$7$F$$$J(B 604 $B$F%3%_%C%H$7$h$&$H$9$k$H!$%o!<%-%s%0%G%#%l%/%H%j$,8=:_$N(Btip$B$KF14|$7$F$$$J(B
605 $B$$$?$a!$?7$?$J%X%C%I$r:n$k$3$H$K$J$C$F$7$^$&!%(B 605 $B$$$?$a!$?7$?$J%X%C%I$r:n$k$3$H$K$J$C$F$7$^$&!%(B
606 606
607 ``$B%(%i!<(B''$B$H$$$&8@MU$r0zMQId$G3g$C$?$N$O!$$3$N>uBV$O(B\hgcmd{merge}$B$H(B 607 ``$B%(%i!<(B''$B$H$$$&8@MU$r0zMQId$G3g$C$?$N$O!$$3$N>uBV$O(B\hgcmd{merge}$B$H(B
608 \hgcmd{commit}$B$@$1$G2r>C$G$-$k$+$i$@!%8@$$BX$($k$H!$$3$N>uBV$O$[$H$s$I$N(B 608 \hgcmd{commit}$B$@$1$G2r>C$G$-$k$+$i$@!%8@$$BX$($k$H!$$3$N>uBV$O$[$H$s$I$N(B
609 $B>l9g32$r$J$9$b$N$G$O$J$J$/!$C1$K=i?4<T$r6C$+$9DxEY$N$b$N$G$"$k!%$3$N?6Iq(B 609 $B>l9g32$r$J$9$b$N$G$O$J$/!$C1$K=i?4<T$r6C$+$9DxEY$N$b$N$G$"$k!%$3$N?6Iq$r(B
610 $B$rHr$1$kJL$NJ}K!$d!$$J$<(BMercurial$B$,$3$N$h$&$K6C$+$;$k$h$&$JJ}K!$GF0:n$9$k(B 610 $BHr$1$kJL$NJ}K!$d!$$J$<(BMercurial$B$,$3$N$h$&$K6C$+$;$k$h$&$JJ}K!$GF0:n$9$k$N(B
611 $B$N$+$K$D$$$F$O8e$[$I5DO@$9$k!%(B 611 $B$+$K$D$$$F$O8e$[$I5DO@$9$k!%(B
612 \end{note} 612 \end{note}
613 613
614 %\subsection{Merging changes 614 %\subsection{Merging changes
615 \subsection{$BJQ99$N%^!<%8(B} 615 \subsection{$BJQ99$N%^!<%8(B}
616 616
682 %merges finish automatically, without requiring your input to resolve 682 %merges finish automatically, without requiring your input to resolve
683 %any conflicts. 683 %any conflicts.
684 684
685 $B>\$7$/=R$Y$l$P%^!<%8$K$O$$$m$$$m$JFC<lNc$,$"$k!%$7$+$7$3$3$G$O:G$bIaDL$N(B 685 $B>\$7$/=R$Y$l$P%^!<%8$K$O$$$m$$$m$JFC<lNc$,$"$k!%$7$+$7$3$3$G$O:G$bIaDL$N(B
686 $BA*Br$K$D$$$F@bL@$9$k!%$3$l$^$G8+$F$-$?$h$&$K!$BgH>$N%1!<%9$O40A4$K<+F0$G(B 686 $BA*Br$K$D$$$F@bL@$9$k!%$3$l$^$G8+$F$-$?$h$&$K!$BgH>$N%1!<%9$O40A4$K<+F0$G(B
687 $B$"$j!$<B:]$KBgH>$N%^!<%8$O>WFM$r2r7h$9$k$?$a$KF~NO$r5a$a$k$3$H$J$/<+F0E*(B 687 $B$"$j!$<B:]$KBgH>$N%^!<%8$O%3%s%U%j%/%H$r2r7h$9$k$?$a$KF~NO$r5a$a$k$3$H$J(B
688 $B$K40N;$9$k!%(B 688 $B$/<+F0E*$K40N;$9$k!%(B
689 689
690 %When you're thinking about what happens when you commit after a merge, 690 %When you're thinking about what happens when you commit after a merge,
691 %once again the working directory is ``the changeset I'm about to 691 %once again the working directory is ``the changeset I'm about to
692 %commit''. After the \hgcmd{merge} command completes, the working 692 %commit''. After the \hgcmd{merge} command completes, the working
693 %directory has two parents; these will become the parents of the new 693 %directory has two parents; these will become the parents of the new
814 814
815 HTTP$B$K$h$k@\B3$N>l9g!$(BMercurial$B$O%G!<%?%9%H%j!<%`A4BN$r$h$j05=LN($N9b$$%"(B 815 HTTP$B$K$h$k@\B3$N>l9g!$(BMercurial$B$O%G!<%?%9%H%j!<%`A4BN$r$h$j05=LN($N9b$$%"(B
816 $B%k%4%j%:%`!J9-$/MQ$$$i$l$F$$$k05=L%Q%C%1!<%8$G$"$k(B\texttt{bzip2}$B$G;H$o$l(B 816 $B%k%4%j%:%`!J9-$/MQ$$$i$l$F$$$k05=L%Q%C%1!<%8$G$"$k(B\texttt{bzip2}$B$G;H$o$l(B
817 $B$F$$$k(BBurrows-Wheeler$B%"%k%4%j%:%`!K$G:F05=L$9$k!%$3$N%"%k%4%j%:%`$H!$!J%j(B 817 $B$F$$$k(BBurrows-Wheeler$B%"%k%4%j%:%`!K$G:F05=L$9$k!%$3$N%"%k%4%j%:%`$H!$!J%j(B
818 $B%S%8%g%sKh$G$J$/!K%9%H%j!<%`A4BN$r05=L$9$k$3$H$K$h$j!$Aw?.$5$l$k%P%$%H?t(B 818 $B%S%8%g%sKh$G$J$/!K%9%H%j!<%`A4BN$r05=L$9$k$3$H$K$h$j!$Aw?.$5$l$k%P%$%H?t(B
819 $B$OBg$-$/Dc8:$5$l!$$"$i$f$k%M%C%H%o!<%/$G$h$$@-G=$r$($k$3$H$,$G$-$k!%(B 819 $B$OBg$-$/Dc8:$5$l!$$"$i$f$k%M%C%H%o!<%/$G$h$$@-G=$rF@$k$3$H$,$G$-$k!%(B
820 820
821 %(If the connection is over \command{ssh}, Mercurial \emph{doesn't} 821 %(If the connection is over \command{ssh}, Mercurial \emph{doesn't}
822 %recompress the stream, because \command{ssh} can already do this 822 %recompress the stream, because \command{ssh} can already do this
823 %itself.) 823 %itself.)
824 824
912 $B%/$HAj@-$N0-$$$3$H$GM-L>$J%U%!%$%k%7%9%F%`>e$G$b0BA4$G$"$k!%!K%j%]%8%H%j(B 912 $B%/$HAj@-$N0-$$$3$H$GM-L>$J%U%!%$%k%7%9%F%`>e$G$b0BA4$G$"$k!%!K%j%]%8%H%j(B
913 $B$,%m%C%/$5$l$k$H!$=q$-9~$_%W%m%;%9$O%j%]%8%H%j$,%"%s%m%C%/$5$l$k$^$G$7$P(B 913 $B$,%m%C%/$5$l$k$H!$=q$-9~$_%W%m%;%9$O%j%]%8%H%j$,%"%s%m%C%/$5$l$k$^$G$7$P(B
914 $B$i$/BT$D!%$7$+$7%j%]%8%H%j$,D9;~4V$K$o$?$C$F%m%C%/$5$lB3$1$k>l9g$O!$=q$-(B 914 $B$i$/BT$D!%$7$+$7%j%]%8%H%j$,D9;~4V$K$o$?$C$F%m%C%/$5$lB3$1$k>l9g$O!$=q$-(B
915 $B9~$_$7$h$&$H$9$k%W%m%;%9$O%?%$%`%"%&%H$9$k!%$3$l$O!$Nc$($P!$F|>oMQ$$$k<+(B 915 $B9~$_$7$h$&$H$9$k%W%m%;%9$O%?%$%`%"%&%H$9$k!%$3$l$O!$Nc$($P!$F|>oMQ$$$k<+(B
916 $BF0%9%/%j%W%H$O1J1s$K%9%?%C%/$9$k$o$1$G$O$J$$$3$H$r0UL#$9$k!%!J$b$A$m$s%?(B 916 $BF0%9%/%j%W%H$O1J1s$K%9%?%C%/$9$k$o$1$G$O$J$$$3$H$r0UL#$9$k!%!J$b$A$m$s%?(B
917 $B%$%`%"%&%H$^$G$N;~4V$O%<%m$+$iL58B$N4V$G@_Dj$+$N$&$G$"$k!K(B 917 $B%$%`%"%&%H$^$G$N;~4V$O%<%m$+$iL58B$N4V$G@_Dj2DG=$G$"$k!K(B
918 918
919 %\subsubsection{Safe dirstate access} 919 %\subsubsection{Safe dirstate access}
920 \subsubsection{$B0BA4$J(Bdirstate$B%"%/%;%9(B} 920 \subsubsection{$B0BA4$J(Bdirstate$B%"%/%;%9(B}
921 921
922 %As with revision data, Mercurial doesn't take a lock to read the 922 %As with revision data, Mercurial doesn't take a lock to read the
928 %guaranteed to be complete, not partially written. 928 %guaranteed to be complete, not partially written.
929 929
930 $B%j%S%8%g%s%G!<%?$N;~$HF1MM$K!$(BMercurial$B$O(Bdirstate$B%U%!%$%k$rFI$_=P$9:]$K$O(B 930 $B%j%S%8%g%s%G!<%?$N;~$HF1MM$K!$(BMercurial$B$O(Bdirstate$B%U%!%$%k$rFI$_=P$9:]$K$O(B
931 $B%m%C%/$r9T$o$J$$!%%m%C%/$r9T$&$N$O=q$-9~$_$N;~$N$_$G$"$k!%0lIt$N$_$,=q$-(B 931 $B%m%C%/$r9T$o$J$$!%%m%C%/$r9T$&$N$O=q$-9~$_$N;~$N$_$G$"$k!%0lIt$N$_$,=q$-(B
932 $B9~$^$l$?(Bdirstate$B%U%!%$%k$rFI$_9~$^$J$$$h$&$K$9$k$?$a!$(B Mercurial$B$OF1$8%G%#(B 932 $B9~$^$l$?(Bdirstate$B%U%!%$%k$rFI$_9~$^$J$$$h$&$K$9$k$?$a!$(B Mercurial$B$OF1$8%G%#(B
933 $B%l%/%H%jFb$K%f%K!<%/$JL>A0$G(Bdirstate$B%U%!%$%k$r=q$-!$$3$N0l;~%U%!%$%k$r%"(B 933 $B%l%/%H%jFb$K8GM-$JL>A0$G(Bdirstate$B%U%!%$%k$r=q$-!$$3$N0l;~%U%!%$%k$r%"%H%_%C(B
934 $B%H%_%C%/$K(B\filename{dirstate}$B$K%j%M!<%`$9$k!%$3$l$K$h(B 934 $B%/$K(B\filename{dirstate}$B$K%j%M!<%`$9$k!%$3$l$K$h$j!$(B\filename{dirstate}$B%U%!(B
935 $B$j!$(B\filename{dirstate}$B%U%!%$%k$O>o$K40A4$G$"$k$3$H$,J]>Z$5$l$k!%(B 935 $B%$%k$O>o$K40A4$G$"$k$3$H$,J]>Z$5$l$k!%(B
936 936
937 %\subsection{Avoiding seeks} 937 %\subsection{Avoiding seeks}
938 \subsection{$B%7!<%/$N2sHr(B} 938 \subsection{$B%7!<%/$N2sHr(B}
939 939
940 %Critical to Mercurial's performance is the avoidance of seeks of the 940 %Critical to Mercurial's performance is the avoidance of seeks of the
941 %disk head, since any seek is far more expensive than even a 941 %disk head, since any seek is far more expensive than even a
942 %comparatively large read operation. 942 %comparatively large read operation.
943 943
944 Mercurial$B$N@-G=$K$O!$%G%#%9%/%X%C%I$N%7!<%/$rHr$1$k$3$H$,IT2D7g$G$"$k!%(B 944 $B%G%#%9%/%X%C%I$N%7!<%/$rHr$1$k$3$H$O(BMercurial$B$N@-G=$K$H$C$F6K$a$F=EMW$G$"(B
945 $B%7!<%/$OBg5,LO$JFI$_=P$7A`:n$HHf3S$7$F$bHs>o$K9b$/$D$/!%(B 945 $B$k!%%7!<%/$OBg5,LO$JFI$_=P$7A`:n$HHf3S$7$F$bHs>o$K9b2A$G$"$k!%(B
946 946
947 %This is why, for example, the dirstate is stored in a single file. If 947 %This is why, for example, the dirstate is stored in a single file. If
948 %there were a dirstate file per directory that Mercurial tracked, the 948 %there were a dirstate file per directory that Mercurial tracked, the
949 %disk would seek once per directory. Instead, Mercurial reads the 949 %disk would seek once per directory. Instead, Mercurial reads the
950 %entire single dirstate file in one step. 950 %entire single dirstate file in one step.