hgbook
diff ja/mq-collab.tex @ 1055:4f899bb4d0dd
1.6.5 refined
author | zhaopingsun |
---|---|
date | Tue Nov 10 19:48:42 2009 -0500 (2009-11-10) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/ja/mq-collab.tex Tue Nov 10 19:48:42 2009 -0500 1.3 @@ -0,0 +1,524 @@ 1.4 +\chapter{Advanced uses of Mercurial Queues} 1.5 +\label{chap:mq-collab} 1.6 + 1.7 +Mercurial Queues $B$NMQK!$r??$C@5D>$KOCBj$K$9$k$N$O4JC1$G$9$,!"(B 1.8 +$B>/!9M^@)$r8z$+$;$F!"9~$_F~$C$?3+H/4D6-$G$N:n6H$KLrN)$D$h$&$J!"(B 1.9 +$B$"$^$jMxMQ$5$l$J$$5!G=$r4v$D$+@bL@$7$h$&$H;W$$$^$9!#(B 1.10 + 1.11 +$B$3$N>O$G$O!"(B 1.12 +Linux $B%+!<%M%k8~$1$N(B Infiniband $B%G%P%$%9%I%i%$%P3+H/$K$*$$$F!"(B 1.13 +$B4IM}$KMQ$$$F$$$?5;K!$r;HMQNc$H$7$F<h$j>e$2$^$9!#(B 1.14 +$B$3$N%G%P%$%9%I%i%$%P$O(B 1.15 +$B!J0lHL$N%G%P%$%9%I%i%$%PDxEY$K$O!KBg$-$/!"(B 1.16 +35 $B$N%=!<%9%U%!%$%k$K$^$?$,$C$?(B 25,000 $B9T$+$i$J$C$F$*$j!"(B 1.17 +$B>/?t$N3+H/%A!<%`$K$h$jJ]<i$5$l$F$$$^$9!#(B 1.18 + 1.19 +$B$3$N>O$G07$C$F$$$kBP>]$O(B Linux $B$KFC2=$7$?$b$N$G$9$,!"(B 1.20 +$B<+?H$,=jM-$7$F$$$J$$%3!<%I$r85$KB?$/$N3+H/$r9T$&I,MW$,$"$k6ILL$G!"(B 1.21 +$BF1MM$NJ}?K$,E,MQ$G$-$k$G$7$g$&!#(B 1.22 + 1.23 +\section{The problem of many targets} 1.24 + 1.25 +Linux $B%+!<%M%k$OIQHK$KJQ99$5$l!"(B 1.26 +$BFbItE*$K$O7h$7$F0BDj$7$F$$$^$;$s!#(B 1.27 +$B3+H/<T$O%j%j!<%9$N4V$KEY!9;W$$@Z$C$?JQ99$r9T$$$^$9!#(B 1.28 +$B$3$N$?$a!"(B 1.29 +Linux $B%+!<%M%k$NFCDj$N%j%j!<%9HG$G5!G=$9$k%I%i%$%P!<$NHG$O!"(B 1.30 +$B35$7$FB>$NHG$K$*$$$F$O(B\emph{$B%3%s%Q%$%k(B}$B$9$iDL$i$J$$>l9g$,$"$j$^$9!#(B 1.31 + 1.32 +$B%I%i%$%P$NJ]<i$r9T$&$?$a$K$O!"(B 1.33 +$B$$$/$D$+$N8DJL$N(B Linux $B$NHG$r0U<1$9$kI,MW$,$"$j$^$9!#(B 1.34 + 1.35 +\begin{itemize} 1.36 +\item $BBh0l$K$O!"%a%$%s$N(B Linux $B%+!<%M%k3+H/%D%j!<$G$9!#(B 1.37 + $B$3$N>l9g$N%3!<%I$NJ]<i$O!"%+!<%M%k%3%_%e%K%F%#$NB>$N3+H/<T$H6&M-$5$l!"(B 1.38 + $BH`$i$,%+!<%M%k$N%5%V%7%9%F%`$KBP$7$F9T$&$N$HF1DxEY$K!"(B 1.39 + ``$B3+H/$7$J$,$i$N(B''$BJQ99$,9T$o$l$^$9!#(B 1.40 + 1.41 +\item $B3+H/$7$F$$$k%I%i%$%P$rMxMQ$9$k$3$H$,$G$-$J$$8E$$(B 1.42 + Linux $B%G%#%9%H%j%S%e!<%7%g%s$r;HMQ$7$F$$$k8\5R$NMWK>$K1~$($k$?$a$K!"(B 1.43 + $B8E$$(B Linux $B%+!<%M%k$NHG$KBP$9$k4v$D$+$N(B``$B%P%C%/%]!<%H(B''$B$NJ]<i$bI,MW$G$9!#(B 1.44 + $B!J%3!<%I$N(B\emph{$B%P%C%/%]!<%H(B}$B$K$O!"(B 1.45 + $B$=$N%3!<%I$N3+H/BP>]$H$J$kHG$h$j$b8E$$HG$N4D6-$G2TF0$5$;$k$?$a$N!"(B 1.46 + $B%3!<%I$N2~JQ$,I,MW$G$9!K(B 1.47 + 1.48 +\item $B:G8e$K$J$j$^$9$,!"8\5R$NMxMQ$7$F$$$k%+!<%M%k$d%G%#%9%H%j%S%e!<%7%g%s$N!"(B 1.49 + $BA4BN$KBP$9$k99?7$r6/$$$k$3$H$J$/?75,5!G=$rDs6!$9$k$?$a$K!"(B 1.50 + $B%=%U%H%&%'%"$N%j%j!<%9%9%1%8%e!<%k$O!"(B 1.51 + Linux $B%G%#%9%H%j%S%e!<%7%g%s$d%+!<%M%k3+H/<T$,MxMQ$7$F$$$k%+!<%M%k$H!"(B 1.52 + $BI,$:$7$bB-JB$_$rB7$($k$o$1$G$O$"$j$^$;$s!#(B 1.53 + 1.54 +\end{itemize} 1.55 + 1.56 +\subsection{Tempting approaches that don't work well} 1.57 + 1.58 +$BJ#?t$N0[$J$k4D6-$rBP>]$H$7$J$1$l$P$J$i$J$$0lO"$N%=%U%H%&%'%"$NJ]<i$K$O!"(B 1.59 +$B#2$D$N(B``$BI8=`E*$J(B''$BJ}K!$,$"$j$^$9!#(B 1.60 + 1.61 +$B#1$DL\$NJ}K!$O!"(B 1.62 +$B$=$l$>$l$,C10l$N4D6-$rBP>]$H$9$kJ#?t$N%V%i%s%A$r4IM}$9$kJ}K!$G$9!#(B 1.63 +$B$3$NJ}K!$NLdBjE@$O!"(B 1.64 +$B%j%]%8%H%j4V$G$NJQ99$N1}Mh(B\footnote{$BLuCm(B: $B$$$o$f$k!V%^!<%8!W$N$3$H(B}$B$K$*$$$F!"(B 1.65 +$BE4$N5,N'$G$b$C$FK>$`I,MW$,M-$k$3$H$G$9!#(B 1.66 +$B?7$7$$5!G=$d%P%0$N=$@5$O(B``$B???7$7$$(B''$B%j%]%8%H%j$G;O$a$J$1$l$P$J$i$:!"(B 1.67 +$B$=$N8e$GA4$F$N%P%C%/%]!<%HMQ%j%]%8%H%j$K?;F)$5$;$^$9!#(B 1.68 +$B%P%C%/%]!<%H$G$NJQ99$O!"$=$NEAGE$,99$K%V%i%s%A8BDj$5$l$^$9!#(B 1.69 +$B=jB030$N%V%i%s%A$KE,MQ$5$l$k$h$&$J%P%C%/%]!<%H8~$1$NJQ99$O!"(B 1.70 +$B$*$=$i$/%I%i%$%P$N%3%s%Q%$%k$rK8$2$k$G$7$g$&!#(B 1.71 + 1.72 +$B#2$DL\$NJ}K!$O!"(B 1.73 +$B8D!9$N%3!<%IJR$NM-8z!?L58z$r!"(B 1.74 +$B0U?^$9$kBP>]$K0MB8$7$F@Z$jBX$($k$?$a$N>r7oJ8$GKd$a$i$l$?!"(B 1.75 +$BC10l$N%=!<%9%D%j!<$rJ]<i$9$kJ}K!$G$9!#(B 1.76 +$B$3$l$i$N(B``ifdef''$B5-=R$O!"(B 1.77 +Linux $B%+!<%M%k%D%j!<$G$O5v$5$l$F$$$J$$$N$G!"(B 1.78 +$B$3$l$i$r<h$j=|$$$Fe:No$J%D%j!<$r@8@.$9$k$?$a$N!"(B 1.79 +$B<jF0$J$$$7<+F0$N<j=g$,I,MW$G$9!#(B 1.80 +$B$3$NN.57$GJ]<i$5$l$k%3!<%I%Y!<%9$OAa!9$K!"(B 1.81 +$BM}2r$bJ]<i$b:$Fq$J>r7oJ,4t$N!VAM$NAc!W$H$J$k$G$7$g$&!#(B 1.82 + 1.83 +$B$3$l$i$N$$$:$l$N<jK!$b!"(B 1.84 +$B@5Ev$J%=!<%9%D%j!<$N%3%T!<$r(B``$B=jM-(B''$B$7$F$$$J$$>u67$K$OE,9g$7$^$;$s!#(B 1.85 +$BI8=`%+!<%M%k$H6&$KG[I[$5$l$k(B Linux $B%I%i%$%P$N>l9g!"(B 1.86 +Linus $B;a$N%=!<%9%D%j!<$O!"(B 1.87 +$B@$3&Cf$,@5E}$H$_$J$9%3!<%I$N%3%T!<$+$i9=@.$5$l$^$9!#(B 1.88 +$B>eN.%j%]%8%H%j$K$*$1$k(B``$B;d$N(B''$B%I%i%$%P$O!"(B 1.89 +Linus $B;a$N%=!<%9%D%j!<>e$K2~JQFbMF$,H?1G$5$l$k$^$G$K$O!"(B 1.90 +$BCN$i$J$$$&$A$K8+CN$i$L?M!9$K$h$C$F0[$J$kHG$K2~JQ$5$l$F$$$k$+$b$7$l$^$;$s!#(B 1.91 + 1.92 +$B$3$l$i$N<jK!$O!"(B 1.93 +$B>eN.%j%]%8%H%j$X$N%Q%C%A$NBN:[$r@0$($k$N$rFq$7$/$7$F$7$^$&!"(B 1.94 +$B$H$$$&7gE@$b;}$C$F$$$^$9!#(B 1.95 + 1.96 +Mercurial Queues $B$O!"(B 1.97 +$B$3$l$^$G=R$Y$F$-$?>u67$G$N3+H/$r4IM}$9$k$?$a$N!"(B 1.98 +$BNI$$8uJd$H8@$($^$9!#(B 1.99 +$B$^$5$K$3$N$h$&$J>u67$K$*$$$F!"(B 1.100 +MQ $B$O:n6H$r2wE,$K$9$k99$K4v$D$+$NIU2CE*5!G=$r;}$C$F$$$^$9!#(B 1.101 + 1.102 +\section{$B%,!<%I$K$h$k>r7oIU$-%Q%C%AE,MQ(B} 1.103 + 1.104 +$B$*$=$i$/!"(B 1.105 +$BB?$/$NBP>]4D6-$KBP$9$k7rA4@-$rJ]<i$9$kJ}K!$O!"(B 1.106 +$B=jDj$N>u67$4$H$KE,MQ$5$l$kFCDj$N%Q%C%A$rA*Br$G$-$k$3$H!"(B 1.107 +$B$H8@$($k$G$7$g$&!#(B 1.108 +MQ $B$O!"(B 1.109 +$B>e5-$N5!G=$r;}$D(B``$B%,!<%I(B''$B!J(Bquilt $B$N(B \texttt{guards} $B%3%^%s%I$KM3Mh$7$^$9!K(B 1.110 +$B$H8F$P$l$k5!G=$rDs6!$7$^$9!#(B 1.111 +$B$^$:$O$8$a$K!"(B 1.112 +$B<B83$N$?$a$N4JAG$J%j%]%8%H%j$r:n@.$7$^$7$g$&!#(B 1.113 + 1.114 +\interaction{mq.guards.init} 1.115 + 1.116 +$B$3$N<j=g$K$h$j!"(B 1.117 +$B0[$J$k%U%!%$%k$rA`:n$9$k$N$G8_$$$K$O0MB8@-$NL5$$#2$D$N%Q%C%A$r;}$D!"(B 1.118 +$B>.$5$J%j%]%8%H%j$,F@$i$l$^$9!#(B 1.119 + 1.120 +$B>r7oIU$-E,MQ$N9M$(J}$O!"(B 1.121 +$BG$0U$NC1=c$JJ8;zNs$+$i$J$k(B\emph{$B%,!<%I(B}$B$5$l$?(B``$B;%(B'' 1.122 +(tag)$B$r%Q%C%A$KIUM?$7$F$*$-!"(B 1.123 +$B%Q%C%AE,MQ$N:]$K!";HMQ$9$Y$-FCDj$N%,!<%I$r(B MQ $B$KBP$7$F65$($k!"(B 1.124 +$B$H$$$&$b$N$G$9!#(B 1.125 +$B$"$i$+$8$aA*Br$7$F$*$$$?%,!<%I$K1~$8$F!"(B 1.126 +MQ $B$O%,!<%I$5$l$?%Q%C%A$rE,MQ$9$k$+8+Aw$k$+$r7hDj$7$^$9!#(B 1.127 + 1.128 +$B8D!9$N%Q%C%A$OG$0U$N?t$N%,!<%I$r;}$D$3$H$,$G$-!"(B 1.129 +$B$=$l$>$l$N%,!<%I$O(B\emph{$B%]%8%F%#%V(B} 1.130 +$B!J(B``$B%,!<%IA*Br;~$K%Q%C%A$rE,MQ$9$k>l9g(B''$B!K$+(B\emph{$B%M%,%F%#%V(B} 1.131 +$B!J(B``$B%,!<%IA*Br;~$K%Q%C%AE,MQ$r8+Aw$k(B''$B!K$N$I$A$i$+$G$9!#(B 1.132 +$B%,!<%I$r;}$?$J$$%Q%C%A$O>o$KE,MQ$5$l$^$9!#(B 1.133 + 1.134 +\section{$B%Q%C%A$N%,!<%I$r@)8f$9$k(B} 1.135 + 1.136 +\hgxcmd{mq}{qguard} $B%3%^%s%I$O!"(B 1.137 +$B$I$N%,!<%I$r%Q%C%A$KE,MQ$9$k$+$r7hDj$9$k$+!"(B 1.138 +$B$5$b$J$/$P8=;~E@$GM-8z$J%,!<%I$rI=<($7$^$9!#(B 1.139 +$B0z?t$,L5$$>l9g!"8=:_$N:G>e0L%Q%C%A$N%,!<%I$rI=<($7$^$9!#(B 1.140 + 1.141 +\interaction{mq.guards.qguard} 1.142 + 1.143 +$B%Q%C%A$K%]%8%F%#%V$J%,!<%I$r@_Dj$9$k$K$O!"(B 1.144 +$B%,!<%IL>$N@\F,<-$H$7$F(B ``\texttt{+}'' $B$rIUM?$7$^$9!#(B 1.145 + 1.146 +\interaction{mq.guards.qguard.pos} 1.147 + 1.148 +$B%Q%C%A$K%M%,%F%#%V$J%,!<%I$r@_Dj$9$k$K$O!"(B 1.149 +$B%,!<%IL>$N@\F,<-$H$7$F(B ``\texttt{-}'' $B$rIUM?$7$^$9!#(B 1.150 + 1.151 +\interaction{mq.guards.qguard.neg} 1.152 + 1.153 +\begin{note} 1.154 + \hgxcmd{mq}{qguard} $B%3%^%s%I$O!"%Q%C%A$K%,!<%I$r@_Dj$7$^$9$,!"(B 1.155 + $B%Q%C%A$N%,!<%I@_Dj$r(B\emph{$BJQ99(B}$B$7$?$j$O$7$^$;$s!#(B 1.156 + $B$D$^$j!"(B 1.157 + $B%Q%C%A$K(B \hgcmdargs{qguard}{+a +b} $B$rE,MQ$7$?8e$K!"(B 1.158 + $BF1$8%Q%C%A$K(B \hgcmdargs{qguard}{+c} $B$rE,MQ$7$?>l9g!"(B 1.159 + $B$3$N%Q%C%A$K@_Dj$5$l$F$$$k%,!<%I$O(B \texttt{+c} \emph{$B$@$1(B}$B$H$J$j$^$9!#(B 1.160 +\end{note} 1.161 + 1.162 +Mercurial $B$O!"(B 1.163 +$B2r<a!&<jF0JT=8$,6&$KMF0W$J7A<0$G!"(B 1.164 +$B%,!<%I>pJs$r(B \sfilename{series} $B$K3JG<$7$^$9(B 1.165 +$B!J8@$$49$($k$J$i!"(B 1.166 +\hgxcmd{mq}{qguard} $B%3%^%s%I$rMxMQ$9$kI,MW$OL5$/!"(B 1.167 +\sfilename{series} $B%U%!%$%k$rD>@\JT=8$7$F$b9=$$$^$;$s!K!#(B 1.168 + 1.169 +\interaction{mq.guards.series} 1.170 + 1.171 +\section{$B;HMQ$9$k%,!<%I$NA*Br(B} 1.172 + 1.173 +\hgxcmd{mq}{qselect} $B%3%^%s%I$O!"M-8z$K$9$k%,!<%I$r7hDj$7$^$9!#(B 1.174 +$B%,!<%I$,7hDj$9$k$3$H$G!"(B 1.175 +$B<!$K(B \hgxcmd{mq}{qpush} $B$r<B9T$7$?:]$K(B MQ $B$,E,MQ$9$k%Q%C%A$,7hDj$5$l$^$9!#(B 1.176 +$B$3$N%3%^%s%I$O$=$l0J30$NF/$-$r$7$^$;$s!#(B 1.177 +$BFC$K!"4{$KE,MQ:Q$_$N%Q%C%A$KBP$7$F$O!"0l@Z2?$b9T$$$^$;$s!#(B 1.178 + 1.179 +$B0z?t$,;XDj$5$l$J$$>l9g!"(B 1.180 +\hgxcmd{mq}{qselect} $B%3%^%s%I$O!"(B 1.181 +$B8=;~E@$GM-8z$K$J$C$F$$$k%,!<%I$r#19T$K#1$D$E$DI=<($7$^$9!#(B 1.182 +$B8D!9$N0z?t$O!"E,MQ$5$l$k%,!<%I$NL>A0$H$_$J$5$l$^$9!#(B 1.183 + 1.184 +\interaction{mq.guards.qselect.foo} 1.185 + 1.186 +$B8=:_A*Br$5$l$F$$$k%,!<%I$N0lMw$,(B 1.187 +\sfilename{guards} $B%U%!%$%k$K3JG<$5$l$F$$$^$9$N$G!"(B 1.188 +$B6=L#$,$"$l$P8+$F$_$k$N$bNI$$$G$7$g$&!#(B 1.189 + 1.190 +\interaction{mq.guards.qselect.cat} 1.191 + 1.192 +\hgxcmd{mq}{qpush} $B$r<B9T$9$k$3$H$G!"(B 1.193 +$B%,!<%IA*Br$N8z2L$r8+$k$3$H$,$G$-$^$9!#(B 1.194 + 1.195 +\interaction{mq.guards.qselect.qpush} 1.196 + 1.197 + 1.198 +``\texttt{+}'' $B$J$$$7(B ``\texttt{-}'' 1.199 +$B$G;O$^$kL>A0$O%,!<%IL>$K$O$G$-$^$;$s!#(B 1.200 +$B6uGrJ8;z$r4^$`$b$N$b%,!<%IL>$K$O$J$l$^$;$s$,!"(B 1.201 +$B$=$l$$$,$$$NBgDq$NJ8;z$O;HMQ2DG=$G$9!#(B 1.202 +$BIT@5$J%,!<%IL>$N;HMQ$O!"(BMQ $B$K$h$j7Y9p$5$l$^$9!#(B 1.203 + 1.204 +\interaction{mq.guards.qselect.error} 1.205 + 1.206 +$B%,!<%IA*Br$NJQ99$O!"E,MQ$5$l$k%Q%C%A$r@Z$jBX$($^$9!#(B 1.207 + 1.208 +\interaction{mq.guards.qselect.quux} 1.209 + 1.210 +$B%M%,%F%#%V$J%,!<%I$,%]%8%F%#%V$J%,!<%I$KM%@h$9$k$3$H$r!"(B 1.211 +$B0J2<$NNc$G8+$k$3$H$,$G$-$^$9!#(B 1.212 + 1.213 +\interaction{mq.guards.qselect.foobar} 1.214 + 1.215 +\section{MQ $B$N%Q%C%AE,MQ%k!<%k(B} 1.216 + 1.217 +$B%Q%C%AE,MQ$NM-L5$rH=Dj$9$k:]$K!"(BMQ $B$O0J2<$N%k!<%k$r;HMQ$7$^$9!#(B 1.218 + 1.219 +\begin{itemize} 1.220 +\item $B%,!<%IL5$7%Q%C%A$O>o$KE,MQ$5$l$^$9!#(B 1.221 + 1.222 +\item $B8=:_A*Br$5$l$F$$$k%,!<%I$K%^%C%A$9$k%M%,%F%#%V%,!<%I$,$"$k>l9g!"(B 1.223 + $B%Q%C%A$OE,MQ$5$l$^$;$s!#(B 1.224 + 1.225 +\item $B8=:_A*Br$5$l$F$$$k%,!<%I$K%^%C%A$9$k%]%8%F%#%V%,!<%I$,$"$k>l9g!"(B 1.226 + $B%Q%C%A$OE,MQ$5$l$^$9!#(B 1.227 + 1.228 +\item $B8=:_A*Br$5$l$F$$$k%,!<%I$K%^%C%A$9$k%,!<%I$,2?$bL5$$>l9g!"(B 1.229 + $B%Q%C%A$OE,MQ$5$l$^$;$s!#(B 1.230 + 1.231 +\end{itemize} 1.232 + 1.233 +\section{Trimming the work environment} 1.234 + 1.235 +$B@h$K=R$Y$?(B 1.236 +Linux $B%+!<%M%k8~$1$N(B Infiniband 1.237 +$B%G%P%$%9%I%i%$%P3+H/$G$N%Q%C%AE,MQ$G$O!"(B 1.238 +Linux $B%+!<%M%k$NDL>o$N%=!<%9%D%j!<$O;HMQ$7$^$;$s!#(B 1.239 +$B$=$NBe$o$j!"(B 1.240 +Infiniband $B%G%P%$%9%I%i%$%P3+H/$K4XO"$9$k%=!<%9!?(B 1.241 +$B%X%C%@$N$_$r4^$`%j%]%8%H%j$r:n@.$7!"(B 1.242 +$B$=$3$KBP$7$F%Q%C%A$rE,MQ$9$k$h$&$K$7$^$9!#(B 1.243 +$B$3$N%j%]%8%H%j$N%5%$%:$O%+!<%M%k%j%]%8%H%j$N(B 1\% $B$K<}$^$k$?$a!"(B 1.244 +$B:n6H$r9T$&$N$b4JC1$G$9!#(B 1.245 + 1.246 +$B=L>.HG$N%j%]%8%H%j$r:n@.$7$?$J$i$P!"(B 1.247 +$B%Q%C%A$N(B``$BE,MQBP>](B''$B$H$J$k%P!<%8%g%s$rA*Br$7$^$9(B\footnote{$BLuCm(B: 1.248 +$B$3$3$G8@$&!V(Bchoose$B!W!JA*Br!K$O!"(B 1.249 +\hgcmd{update} $B<B9T$r;X$9$N$G$O$J$$$+!)(B 1.250 +$B$=$&$G$"$l$P!"<!J8$,!V$3$l$O!A%9%J%C%W%7%g%C%H$@!W$H$$$&$N$bM}2r$G$-$k!#(B}$B!#(B 1.251 +XXXXXXXXXXXX 1.252 +This is a snapshot of the Linux kernel tree as of a revision 1.253 +of my choosing. 1.254 +XXXXXXXXXXXX 1.255 +$BE,MQBP>]$rA*Br$9$k:]$KI.<T$O!"(B 1.256 +$BEv3:%j%S%8%g%s$N%+!<%M%k%j%]%8%H%j$K$*$1$k%A%'%s%8%;%C%H(BID$B$r!"(B 1.257 +$B%3%_%C%H%a%C%;!<%8(B\footnote{$BLuCm(B: $B%Q%C%A$N!)(B XXXXXX}$BCf$K5-O?$7$F$*$-$^$9!#(B 1.258 +$B%+!<%M%k%D%j!<Cf$N3+H/$K4XO"$9$kIt0L$K4X$7$F!"(B 1.259 +$B%9%J%C%W%7%g%C%H$K$h$C$F(B``$B>u67(B''$B$HFbMF$,FCDj$G$-$k$?$a!"(B 1.260 +$B=L>.HG%j%]%8%H%j$HDL>oHG$N%+!<%M%k%D%j!<$N$$$:$l$KBP$7$F$b!"(B 1.261 +$B%Q%C%A$NE,MQ$,2DG=$K$J$j$^$9!#(BXXXXXX 1.262 +Since the snapshot 1.263 +preserves the ``shape'' and content of the relevant parts of the 1.264 +kernel tree, I can apply my patches on top of either my tiny 1.265 +repository or a normal kernel tree. 1.266 + 1.267 +$BDL>o$O!"(B 1.268 +$B%Q%C%A$NE,MQBP>]$H$J$k%=!<%9%D%j!<$N%Y!<%9$K$O!"(B 1.269 +$B>eN.%j%]%8%H%j$ND>6a$N%9%J%C%W%7%g%C%H$r;HMQ$9$Y$-$G$9!#(B 1.270 +$B$=$&$9$k$3$H$G!"(B 1.271 +$B:n@.$7$?%Q%C%A$r>eN.%j%]%8%H%j$NC4Ev<T$XAwIU$9$k:]$K!"(B 1.272 +$BKX$I!J$"$k$$$OA4$/!K2~JQ$NI,MW$,L5$/$J$k$G$7$g$&!#(B 1.273 + 1.274 +\section{Dividing up the \sfilename{series} file} 1.275 + 1.276 +$BI.<T$O!"(B\sfilename{series} $B$KNs5s$5$l$k%Q%C%A$r!"(B 1.277 +$B4v$D$+$NO@M}E*$J$^$H$^$j$KJ,N`$7$F$$$^$9!#(B 1.278 +$B$=$l$>$l$N%Q%C%AJ,N`$O!"(B 1.279 +$B$=$N8e$KNs5s$5$l$k%Q%C%A$N0U?^$r5-=R$7$?%3%a%s%H%V%m%C%/$G3+;O$5$l$^$9!#(B 1.280 + 1.281 +$BI.<T$N07$C$F$$$k%Q%C%AJ,N`$O!"0J2<$N$h$&$JJB$S$K$J$C$F$$$^$9!#(B 1.282 +$BJ,N`$N=g=x$O=EMW$J$N$G!"J,N`$r>R2p$7$?8e$G@bL@$7$^$9!#(B 1.283 + 1.284 +\begin{itemize} 1.285 +\item ``$B<uM}:Q$_(B(accepted)''$BJ,N`(B: 1.286 + $B3+H/%A!<%`$,(B Infiniband $B%5%V%7%9%F%`$NJ]<iC4Ev$KAwIU$7$F!"(B 1.287 + $B4{$K<uM}$O$5$l$F$$$k$b$N$N!"(B 1.288 + $B=L>.HG%j%]%8%H%j$,85$K$7$F$$$k%9%J%C%W%7%g%C%H$K$O!"(B 1.289 + $B$^$@H?1G$5$l$F$$$J$$%Q%C%A$NJ,N`$G$9!#(B 1.290 + $B$3$l$i$O!"(B 1.291 + $B>eN.%j%]%8%H%j$NJ]<iC4Ev$N%j%]%8%H%j$HF1$8>uBV$rF@$k$?$a$K!"(B 1.292 + $B%=!<%9%D%j!<$rJQ49$9$k(B``$BFI$_=P$78BDj(B''$B%Q%C%A$G$9!#(B 1.293 + 1.294 +\item ``$B:F:n6H(B(rework)''$BJ,N`(B: 1.295 + $B>eN.%j%]%8%H%j$NJ]<iC4Ev$KAwIU$7$?$b$N$N!"(B 1.296 + $B<uM}$KEv$?$C$FJQ99$rMW5a$5$l$?%Q%C%A$NJ,N`!#(B 1.297 + 1.298 +\item ``$BJ]N1(B(pending)''$BJ,N`(B: 1.299 + $B>eN.%j%]%8%H%j$NJ]<iC4Ev$KAwIU$3$=$7$F$$$J$$$b$N$N!"(B 1.300 + $B4{$K:n6H$r=*$($?%Q%C%A$NJ,N`!#(B 1.301 + $B$7$P$i$/$N4V$O(B``$BFI$_=P$78BDj(B''$B$H$7$F07$o$l$^$9!#(B 1.302 + $B>eN.%j%]%8%H%j$NJ]<iC4Ev$K$h$j<uM}$5$l$l$P!"(B 1.303 + $B$3$N%Q%C%A$r(B``$B<uM}:Q$_(B''$BJ,N`$NKvHx$X$H0\F0$7$^$9!#(B 1.304 + $B<uM}$KEv$?$C$FJQ99$,MW5a$5$l$?>l9g!"(B 1.305 + ``$B:F:n6H(B''$BJ,N`$N@hF,$X$H0\F0$7$^$9!#(B 1.306 + 1.307 +\item ``$B:n6HCf(B(in progress)''$BJ,N`(B: 1.308 + $BL\2<$N$H$3$m3hH/$K:n6H$,9T$o$l$F$$$k%Q%C%A$NJ,N`!#(B 1.309 + $B$3$NJ,N`$N%Q%C%A$O!"30It$K8x3+$9$Y$-$G$O$"$j$^$;$s!#(B 1.310 + 1.311 +\item ``$B%P%C%/%]!<%H(B(backport)''$BJ,N`(B: 1.312 + $B8E$$HG$N%+!<%M%k$N%=!<%9%D%j!<$KE,9g$5$;$k$?$a$N%Q%C%A$NJ,N`!#(B 1.313 + 1.314 +\item ``$BFbItMQ(B(do not ship)''$BJ,N`(B: 1.315 + $B2?$i$+$NM}M3$K$h$j!">eN.%j%]%8%H%j$NJ]<iC4Ev$X$OAwIU$5$l$J$$%Q%C%A$NJ,N`!#(B 1.316 + $B$3$N$h$&$J%Q%C%A$NNc$H$7$F$O!"(B 1.317 + $B%I%i%$%P<1JLMQ$NKd$a9~$_J8;zNs$NJQ99$r9T$&$3$H$G!"(B 1.318 + $B%=!<%9%D%j!<$N$b$N$H$O0[$J$k%I%i%$%P<BAu$NHG(B 1.319 + \footnote{$BLuCm(B: $B3+H/Cf$N%I%i%$%P$N$3$H!)(B}$B$H!"(B 1.320 + $B%G%#%9%H%j%S%e!<%7%g%s%Y%s%@$K$h$C$FG[I[$5$l$k%I%i%$%P<BAu$NHG$N4V$G!"(B 1.321 + $BF0:n3NG'Ey$K$*$1$k6hJL$rMF0W$K$9$k%Q%C%A$,$"$j$^$9!#(B 1.322 + 1.323 +\end{itemize} 1.324 + 1.325 +$B$G$O$3$3$G!"%Q%C%AJ,N`Hx$r$3$N=gHV$K$9$kM}M3$KLa$j$^$7$g$&!#(B 1.326 +$B%3%s%F%-%9%H$NJQ99$,H/@8$9$k$3$H$G!"(B 1.327 +$B%9%?%C%/>eJ}$N%Q%C%A$X$N:F:n6H(B 1.328 +\footnote{$BLuCm(B: \hgxcmd{mq}{qrefresh} $B$N<B9T$K$h$k%Q%C%A$N=$@5$N$3$H(B} 1.329 +$B$,I,MW$K$J$k$3$H$,L5$$$h$&$K!"(B 1.330 +$B%9%?%C%/Cf$GDl$K$"$k%Q%C%A$[$I0BDj$7$F$$$FM_$7$$$b$N$G$9!#(B 1.331 +$BJQ99$5$l$K$/$$%Q%C%A72$r(B 1.332 +\sfilename{series} $B%U%!%$%k$NKAF,$KCV$/$3$H$G!"(B 1.333 +$B$3$NL\E*$rC#@.$9$k$3$H$,$G$-$^$9!#(B 1.334 + 1.335 +$BB>$N%Q%C%A$NE,MQ$r6KNO>eN.%j%]%8%H%j$N>uBV$K6a$$%=!<%9%D%j!<$X9T$&$?$a$K!"(B 1.336 +$B%=!<%9%D%j!<$NJQ49$KI,MW$H;W$o$l$k%Q%C%A$b=EMW$G$9!#(B 1.337 +$B<uM}:Q$_$N%Q%C%A$b;C$/$N4VJ];}$7$F$$$k$N$O$=$N$?$a$G$9!#(B 1.338 + 1.339 +``$B%P%C%/%]!<%H(B''$B$*$h$S(B``$BFbItMQ(B''$B%Q%C%A$O!"(B 1.340 +\sfilename{series} $BKvHx6aJU$rE>!9$H$7$^$9!#(B 1.341 +$B%P%C%/%]!<%H%Q%C%A$OB>$NA4$F$N%Q%C%AE,MQ$N>e$GE,MQ$5$l$J$1$l$P$J$j$^$;$s$7!"(B 1.342 +$B$=$N>e!"(B 1.343 +``$BFbItMQ(B''$B%Q%C%A$OITET9g$,L5$$$h$&$KFbIt$KN1$^$jB3$1$kI,MW$,$"$j$^$9!#(B 1.344 + 1.345 +\section{Maintaining the patch series} 1.346 + 1.347 +$BI.<T$N:n6H$N:]$K$O!"(B 1.348 +$B%Q%C%AE,MQ$r@)8f$9$k$?$a$KJ#?t$N%,!<%I$r;HMQ$7$F$$$^$9!#(B 1.349 + 1.350 +\begin{itemize} 1.351 +\item ``$B<uM}:Q$_(B''$B%Q%C%A$K$O!"(B\texttt{accepted} $B%,!<%I$,IUM?$5$l$^$9!#(B 1.352 + $B$3$N%,!<%I$OKX$I$N>l9g$KM-8z$H$5$l$^$9!#(B 1.353 + $B4{$K%Q%C%A$,E,MQ$5$l$F$$$k%=!<%9%D%j!<$K%Q%C%A$rE,MQ$9$k:]$K$O!"(B 1.354 + $B%Q%C%A$rE,MQ$5$;$J$$$h$&$K$9$k$3$H$,(B 1.355 + \footnote{$BLuCm(B: \texttt{accepted} $B%,!<%IIU$-%Q%C%A$rL58z$K$9$k$3$H$G(B} 1.356 + $B$G$-$k$N$G!"(B 1.357 + $B8eB3$N%Q%C%A72$Oe:No$KE,MQ$5$l$^$9!#(B 1.358 + 1.359 +\item $B:n6H$O(B``$B40N;(B''$B$7$F$$$k$b$N$N!"(B 1.360 + $B>eN.%j%]%8%H%j$NJ]<iC4Ev$KAwIU$5$l$F$$$J$$%Q%C%A(B 1.361 + \footnote{$BLuCm(B: $B@h$NJ,N`$G8@$&$H$3$m$N(B``$BJ]N1(B(pending)''}$B$K$O!"(B 1.362 + $B2?$b%,!<%I$,IUM?$5$l$^$;$s!#(B 1.363 + $B>eN.%j%]%8%H%j$N%3%T!<$KBP$7$F%Q%C%A%9%?%C%/$rE,MQ$9$k>l9g!"(B 1.364 + $BFC$K2?$b%,!<%I$r;XDj$7$J$/$F$b!"(B 1.365 + $BE,EY$K0BA4$J%=!<%9%D%j!<$rF@$k$3$H$,$G$-$^$9!#(B 1.366 + 1.367 +\item $B>eN.%j%]%8%H%j$NJ]<iC4Ev$X$N!J:F!KAwIU$KEv$?$C$F!"(B 1.368 + $B:F:n6H$,I,MW$J%Q%C%A$K$O(B \texttt{rework} $B%,!<%I$,IUM?$5$l$^$9!#(B 1.369 + 1.370 +\item $BL\2<3+H/:n6HCf$K$"$k%Q%C%A(B 1.371 + \footnote{$BLuCm(B: $B@h$NJ,N`$G8@$&$H$3$m$N(B``$B:n6HCf(B(in progress)''}$B$K$O!"(B 1.372 + \texttt{devel} $B%,!<%I$,IUM?$5$l$^$9!#(B 1.373 + 1.374 +\item $B%P%C%/%]!<%H%Q%C%A$K$O!"(B 1.375 + $BE,MQBP>]%+!<%M%k$N%P!<%8%g%s$r;XDj$9$kJ#?t$N%,!<%I$,IUM?$5$l$^$9!#(B 1.376 + $BNc$($P!"(B~2.6.9 $BHG$X$N%P%C%/%]!<%H$r9T$&%Q%C%A$K$O!"(B 1.377 + \texttt{2.6.9} $B%,!<%I$,IUM?$5$l$^$9!#(B 1.378 + 1.379 +\end{itemize} 1.380 + 1.381 +$B$3$l$i$N%,!<%IJ,N`$K$h$j!"(B 1.382 +$B:G=*E*$K$I$N$h$&$J%=!<%9%D%j!<$,F@$i$l$k$+$r7hDj$9$k:]$K!"(B 1.383 +$B>/$J$+$i$L=@Fp@-$rF@$k$3$H$,$G$-$^$9!#(B 1.384 +$BB?$/$N>l9g!"(B 1.385 +$BE,@Z$J%,!<%I$NA*Br$O9=C[<j=g$NCf$G<+F02=$5$l$F$$$^$9$,!"(B 1.386 +$BFCJL$J>u678~$1$K%,!<%I$ND4@0$r<jF0$G9T$&$3$H$b2DG=$G$9!#(B 1.387 + 1.388 +\subsection{The art of writing backport patches} 1.389 + 1.390 +MQ $B$r;HMQ$9$k$3$H$G!"(B 1.391 +$B%P%C%/%]!<%H%Q%C%A$N:n@.$OC1=c$J:n6H$H$J$j$^$9!#(B 1.392 +$B5lHG$N%+!<%M%kG[2<$K$*$$$F$b%I%i%$%P$,@5>o$K2TF0$9$k$h$&$K!"(B 1.393 +$B5lHG$N%+!<%M%k$K$*$$$FDs6!$5$l$F$$$J$$5!G=$r;HMQ$9$k%3!<%I$NJQ99$,!"(B 1.394 +$B%P%C%/%]!<%H%Q%C%A$N$9$Y$-$3$H$NA4$F$G$9!#(B 1.395 + 1.396 +$BNI$$%P%C%/%]!<%H%Q%C%A$r=q$/:]$N%4!<%k$O!"(B 1.397 +$BBP>]$H$9$k5lHG%+!<%M%k8~$1$K=q$$$?$+$N$h$&$K!"(B 1.398 +$B$"$J$?$N%3!<%I$rJQ99$9$k$h$&$J%Q%C%A$K$9$k$3$H$G$9!#(B 1.399 +$B%Q%C%A$,$G$7$c$P$i$J$$Dx!"M}2r$HJ]<i$,MF0W$K$J$j$^$9!#(B 1.400 +$B%3!<%ICf$NBgNL$N(B \texttt{\#ifdef}$B!J>r7o$K1~$8$FE,MQ$5$l$k%3!<%IJR!K(B 1.401 +$B$K$h$k(B``$BAM$NAc(B''$B2=$rHr$1$k$?$a$K%P%C%/%]!<%H%Q%C%A72$r=q$/$N$G$"$l$P!"(B 1.402 +$B%P!<%8%g%s0MB8$J(B \texttt{\#ifdef} $B$r%Q%C%A$K;}$A9~$`$Y$-$G$O$"$j$^$;$s!#(B 1.403 +$B%P!<%8%g%s0MB8$J(B \texttt{\#ifdef} $B$r;HMQ$9$kBX$o$j$K!"(B 1.404 +$B8D!9$N%Q%C%A$O%P!<%8%g%s$K0MB8$7$J$$JQ99$r9T$&$h$&$K$7$F!"(B 1.405 +$B%Q%C%A$NE,MQ$r%,!<%I$K$h$C$F@)8f$9$Y$-$G$9!#(B 1.406 + 1.407 +``$BDL>o(B''$B$N%Q%C%A$H!"(B 1.408 +$B$=$NE,MQ7k2L$r99$KJQ99$9$k%P%C%/%]!<%H%Q%C%A$H$r!"(B 1.409 +$BJL8D$N%0%k!<%W$KJ,N%$9$k$N$K$O#2$D$NM}M3$,$"$j$^$9!#(B 1.410 +$BBh#1$NM}M3$O!"(B 1.411 +$B$3$l$i$N%Q%C%A$,:.$6$j9g$C$?>l9g$K!"(B 1.412 +$B>eN.%j%]%8%H%j$NJ]<iC4Ev$X$N%Q%C%AAwIU$N<+F02=$N:]$K!"(B 1.413 +\hgext{patchbomb} $B3HD%$N$h$&$J%D!<%k$r;H$&$3$H$,Fq$7$/$J$k$?$a$G$9!#(B 1.414 +$BBh#2$NM}M3$O!"(B 1.415 +$B8eB3$NDL>o%Q%C%A$NE,MQ%3%s%F%-%9%H(B 1.416 +\footnote{$BLuCm(B: \command{patch} $B%U%!%$%k$K$*$1$k!V%3%s%F%-%9%H!W(B} 1.417 +$B$r%P%C%/%]!<%H%Q%C%A$,:.Mp$5$;$F$7$^$$!"(B 1.418 +$BDL>o%Q%C%A$NE,MQA0$KE,MQ$5$l$?%P%C%/%]!<%H%Q%C%A(B\emph{$BH4$-(B}$B$G$O!"(B 1.419 +$BDL>o%Q%C%A$re:No$KE,MQ$9$k$3$H$,$G$-$J$/$J$C$F$7$^$&$?$a$G$9!#(B 1.420 + 1.421 +\section{Useful tips for developing with MQ} 1.422 + 1.423 +\subsection{Organising patches in directories} 1.424 + 1.425 +MQ $B$rMxMQ$7$?<B:_$9$k%W%m%8%'%/%H$G:n6H$r$7$F$$$k$N$G$"$l$P!"(B 1.426 +$BB?$/$N%Q%C%A$rC_@Q$9$k$3$H$bFq$7$$$3$H$G$O$"$j$^$;$s!#(B 1.427 +$BNc$($P!"I.<T$O(B 250 $B$rD6$($k%Q%C%A$rJz$($?%Q%C%A%j%]%8%H%j$r;}$C$F$$$^$9!#(B 1.428 + 1.429 +$B%Q%C%A$r8DJL$NO@M}E*$J$^$H$^$j$KJ,N`$G$-$k$N$G$"$l$P!"(B 1.430 +MQ $B$O%Q%C%AL>$K%Q%96h@Z$j$,4^$^$l$F$$$F$bLdBj$J$$$N$G!"(B 1.431 +$B$=$l$>$l$N%Q%C%A$r0[$J$k%G%#%l%/%H%j$K3JG<$9$k$3$H$b$G$-$^$9(B 1.432 +\footnote{$BLuCm(B: MQ $B$O%Q%C%AFbMF$NJ]B8@h$H$7$F!"(B 1.433 +$B%Q%C%AL>$HF1L>$N%U%!%$%k$r:n@.$9$k$?$a!"(B 1.434 +$B%Q%C%AL>$K%Q%96h@Z$j$,4^$^$l$k>l9g!"(B 1.435 +MQ $B$O<+F0E*$K%5%V%G%#%l%/%H%j$r:n@.$7$^$9(B}$B!#(B 1.436 + 1.437 +\subsection{Viewing the history of a patch} 1.438 +\label{mq-collab:tips:interdiff} 1.439 + 1.440 +$BD94|4V$K$o$?$C$F%Q%C%A$N3+H/$r9T$&>l9g!"(B 1.441 +\ref{sec:mq:repo} $B@a$G=R$Y$?$h$&$K!"(B 1.442 +$B%Q%C%A$r%j%]%8%H%j$G4IM}$9$k$N$,NI$$$G$7$g$&!#(B 1.443 +$B$=$N>l9g$OAa!9$K!"(B 1.444 +$B%Q%C%A$NJQ99MzNr$N;2>H$K(B 1.445 +\hgcmd{diff} $B$,;H$($J$$$3$H$K5$IU$/$3$H$G$7$g$&!#(B 1.446 +$B$3$l$O<B:]$N%3!<%I$NFs<!GI@8J*(B($B:9J,$N:9J,(B)$B$r8+$F$$$k$3$H0J30$K$b!"(B 1.447 +$B%?%$%`%9%?%s%W$d%Q%C%A99?7;~$N%G%#%l%/%H%jL>Ey$r2~JQ$9$k$3$H$G(B 1.448 +MQ $B$,;(2;$r2C$($F$7$^$C$F$$$k$3$H$K860x$,$"$j$^$9!#(B 1.449 + 1.450 +Mercurial $B$KF1:-$5$l$F$$$k(B \hgext{extdiff} $B3HD%$r;H$&$3$H$G!"(B 1.451 +$B#2$D$NHG$N%Q%C%A:9J,$r4vJ,FI$_$d$9$$$b$N$K$9$k$3$H$,$G$-$^$9!#(B 1.452 +$B$3$N3HD%$r;H$&$?$a$K$O!"(B 1.453 +$B%5!<%I%Q!<%F%#!<%Q%C%1!<%8$G$"$k(B 1.454 +\package{patchutils}~\cite{web:patchutils} $B$,I,MW$G$9!#(B 1.455 +$B$3$N%Q%C%1!<%8$,Ds6!$9$k(B \command{interdiff} $B$H$$$&%3%^%s%I$O!"(B 1.456 +$B:9J,4V$N:9J,$r#1$D$N:9J,$H$7$FI=<($7$^$9!#(B 1.457 +$BF1$8:9J,$N#2$D$NHG(B 1.458 +\footnote{$BLuCm(B: $B!VF1$8%Q%C%A$N0[$J$kHG!W$N0U$+!)(B} 1.459 +$B$KBP$7$F$3$N%3%^%s%I$rE,MQ$9$k$H!"(B 1.460 +$B:G=i$NHG$+$i<!$NHG$X$HJQ99$9$k$?$a$N:9J,$r@8@.$7$^$9!#(B 1.461 + 1.462 +$B$$$D$b$N$h$&$K!"(B 1.463 +\hgrc $B%U%!%$%k$N(B \rcsection{extensions} 1.464 +$B%;%/%7%g%s$K9T$rDI2C$9$k$3$H$G!"(B 1.465 +\hgext{extdiff} $B3HD%$rM-8z2=$9$k$3$H$,$G$-$^$9!#(B 1.466 + 1.467 +\begin{codesample2} 1.468 + [extensions] 1.469 + extdiff = 1.470 +\end{codesample2} 1.471 + 1.472 +\command{interdiff} $B%3%^%s%I$O#2$D$N%U%!%$%kL>$N;XDj$,I,MW$G$9$,!"(B 1.473 +\hgext{extdiff} $B3HD%$O!"(B 1.474 +$B$=$l$>$lG$0U$N?t$N%U%!%$%k$rG[2<$K;}$D!"(B 1.475 +$B#2$D$N%G%#%l%/%H%j$KBP$7$FF0:n$9$k%W%m%0%i%`$N;XDj$,I,MW$G$9!#(B 1.476 +$B$=$N$?$a!"(B 1.477 +$B$3$l$i#2$D$N%G%#%l%/%H%jG[2<$N8D!9$N%U%!%$%kBP$KBP$7$F(B 1.478 +\command{interdiff} $B$r<B9T$9$k>.$5$J%W%m%0%i%`$,I,MW$G$9!#(B 1.479 +$BK\=q$N%=!<%9%3!<%I%j%]%8%H%j$K$*$1$k(B 1.480 +\dirname{examples} $B%G%#%l%/%H%jG[2<$K!"(B 1.481 +\sfilename{hg-interdiff} $B$H$7$F3JG<$5$l$F$$$^$9!#(B 1.482 + 1.483 +\excode{hg-interdiff} 1.484 + 1.485 +\sfilename{hg-interdiff} $B$,%7%'%k$N%3%^%s%I8!:w%Q%9>e$KM-$k>l9g!"(B 1.486 +MQ $B$N%Q%C%A%G%#%l%/%H%j$+$i0J2<$N$h$&$K$7$F5/F0$9$k$3$H$,$G$-$^$9!#(B 1.487 + 1.488 +\begin{codesample2} 1.489 + hg extdiff -p hg-interdiff -r A:B my-change.patch 1.490 +\end{codesample2} 1.491 + 1.492 +$B$*$=$i$/$3$ND9$?$i$7$$%3%^%s%I$r2?EY$b;H$&$3$H$K$J$k$G$7$g$&$+$i!"(B 1.493 +$B:FEY(B \hgrc $B$rJT=8$7$F!"(B 1.494 +\hgext{hgext} $B$r(B Mercurial $B$NIaDL$N%3%^%s%IJB$K;H$($k$h$&$K$7$^$7$g$&!#(B 1.495 + 1.496 +\begin{codesample2} 1.497 + [extdiff] 1.498 + cmd.interdiff = hg-interdiff 1.499 +\end{codesample2} 1.500 + 1.501 +$B$3$N5-=R$K$h$j(B \texttt{interdiff} $B$,(B 1.502 +\hgext{hgext} $B$+$iMxMQ$G$-$k$h$&$K$J$j$^$9$N$G!"(B 1.503 +$B@h$N(B \hgxcmd{extdiff}{extdiff} $B5/F0$bC;$/$J$C$F4vJ,;H$$$d$9$/$J$k$G$7$g$&!#(B 1.504 + 1.505 +\begin{codesample2} 1.506 + hg interdiff -r A:B my-change.patch 1.507 +\end{codesample2} 1.508 + 1.509 +\begin{note} 1.510 + \command{interdiff} $B%3%^%s%I$O!"(B 1.511 + $B>l9g$@$1@5$7$/5!G=$7$^$9!#(B 1.512 + The \command{interdiff} command works well only if the underlying 1.513 + files against which versions of a patch are generated remain the 1.514 + same. 1.515 + $B%Q%C%A$N@8@.!&%U%!%$%k$NJQ99$*$h$S%Q%C%A$N99?7$r9T$C$?>l9g!"(B 1.516 + \command{interdiff} $B$OM-MQ$J=PNO$r@8@.$7$J$$$3$H$,$"$j$^$9!#(B 1.517 +\end{note} 1.518 + 1.519 +\hgext{extdiff} $B3HD%$O!"(B 1.520 +MQ $B%Q%C%A$NI=<(5!G=$N8~>e$KN1$^$i$J$$M-MQ$J$b$N$G$9!#(B 1.521 +\hgext{extdiff} $B3HD%$K4X$9$k>\:Y$O!"(B 1.522 +\ref{sec:hgext:extdiff} $B@a$r;2>H$7$F$/$@$5$$!#(B 1.523 + 1.524 +%%% Local Variables: 1.525 +%%% mode: latex 1.526 +%%% TeX-master: "00book" 1.527 +%%% End: