hgbook

annotate ja/mq-collab.tex @ 971:4a6a34e1586e

Traduction du chapitre src-install
author Jean Marie Clement <JeanMarieClement@web.de>
date Mon Aug 31 15:58:56 2009 +0200 (2009-08-31)
parents
children
rev   line source
foozy@708 1 \chapter{Advanced uses of Mercurial Queues}
foozy@708 2 \label{chap:mq-collab}
foozy@708 3
foozy@708 4 Mercurial Queues $B$NMQK!$r??$C@5D>$KOCBj$K$9$k$N$O4JC1$G$9$,!"(B
foozy@708 5 $B>/!9M^@)$r8z$+$;$F!"9~$_F~$C$?3+H/4D6-$G$N:n6H$KLrN)$D$h$&$J!"(B
foozy@708 6 $B$"$^$jMxMQ$5$l$J$$5!G=$r4v$D$+@bL@$7$h$&$H;W$$$^$9!#(B
foozy@708 7
foozy@708 8 $B$3$N>O$G$O!"(B
foozy@708 9 Linux $B%+!<%M%k8~$1$N(B Infiniband $B%G%P%$%9%I%i%$%P3+H/$K$*$$$F!"(B
foozy@708 10 $B4IM}$KMQ$$$F$$$?5;K!$r;HMQNc$H$7$F<h$j>e$2$^$9!#(B
foozy@708 11 $B$3$N%G%P%$%9%I%i%$%P$O(B
foozy@708 12 $B!J0lHL$N%G%P%$%9%I%i%$%PDxEY$K$O!KBg$-$/!"(B
foozy@708 13 35 $B$N%=!<%9%U%!%$%k$K$^$?$,$C$?(B 25,000 $B9T$+$i$J$C$F$*$j!"(B
foozy@708 14 $B>/?t$N3+H/%A!<%`$K$h$jJ]<i$5$l$F$$$^$9!#(B
foozy@708 15
foozy@708 16 $B$3$N>O$G07$C$F$$$kBP>]$O(B Linux $B$KFC2=$7$?$b$N$G$9$,!"(B
foozy@708 17 $B<+?H$,=jM-$7$F$$$J$$%3!<%I$r85$KB?$/$N3+H/$r9T$&I,MW$,$"$k6ILL$G!"(B
foozy@708 18 $BF1MM$NJ}?K$,E,MQ$G$-$k$G$7$g$&!#(B
foozy@708 19
foozy@708 20 \section{The problem of many targets}
foozy@708 21
foozy@708 22 Linux $B%+!<%M%k$OIQHK$KJQ99$5$l!"(B
foozy@708 23 $BFbItE*$K$O7h$7$F0BDj$7$F$$$^$;$s!#(B
foozy@708 24 $B3+H/<T$O%j%j!<%9$N4V$KEY!9;W$$@Z$C$?JQ99$r9T$$$^$9!#(B
foozy@708 25 $B$3$N$?$a!"(B
foozy@708 26 Linux $B%+!<%M%k$NFCDj$N%j%j!<%9HG$G5!G=$9$k%I%i%$%P!<$NHG$O!"(B
foozy@708 27 $B35$7$FB>$NHG$K$*$$$F$O(B\emph{$B%3%s%Q%$%k(B}$B$9$iDL$i$J$$>l9g$,$"$j$^$9!#(B
foozy@708 28
foozy@708 29 $B%I%i%$%P$NJ]<i$r9T$&$?$a$K$O!"(B
foozy@708 30 $B$$$/$D$+$N8DJL$N(B Linux $B$NHG$r0U<1$9$kI,MW$,$"$j$^$9!#(B
foozy@708 31
foozy@708 32 \begin{itemize}
foozy@708 33 \item $BBh0l$K$O!"%a%$%s$N(B Linux $B%+!<%M%k3+H/%D%j!<$G$9!#(B
foozy@708 34 $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
foozy@708 35 $BH`$i$,%+!<%M%k$N%5%V%7%9%F%`$KBP$7$F9T$&$N$HF1DxEY$K!"(B
foozy@708 36 ``$B3+H/$7$J$,$i$N(B''$BJQ99$,9T$o$l$^$9!#(B
foozy@708 37
foozy@708 38 \item $B3+H/$7$F$$$k%I%i%$%P$rMxMQ$9$k$3$H$,$G$-$J$$8E$$(B
foozy@708 39 Linux $B%G%#%9%H%j%S%e!<%7%g%s$r;HMQ$7$F$$$k8\5R$NMWK>$K1~$($k$?$a$K!"(B
foozy@708 40 $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
foozy@708 41 $B!J%3!<%I$N(B\emph{$B%P%C%/%]!<%H(B}$B$K$O!"(B
foozy@708 42 $B$=$N%3!<%I$N3+H/BP>]$H$J$kHG$h$j$b8E$$HG$N4D6-$G2TF0$5$;$k$?$a$N!"(B
foozy@708 43 $B%3!<%I$N2~JQ$,I,MW$G$9!K(B
foozy@708 44
foozy@708 45 \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
foozy@708 46 $BA4BN$KBP$9$k99?7$r6/$$$k$3$H$J$/?75,5!G=$rDs6!$9$k$?$a$K!"(B
foozy@708 47 $B%=%U%H%&%'%"$N%j%j!<%9%9%1%8%e!<%k$O!"(B
foozy@708 48 Linux $B%G%#%9%H%j%S%e!<%7%g%s$d%+!<%M%k3+H/<T$,MxMQ$7$F$$$k%+!<%M%k$H!"(B
foozy@708 49 $BI,$:$7$bB-JB$_$rB7$($k$o$1$G$O$"$j$^$;$s!#(B
foozy@708 50
foozy@708 51 \end{itemize}
foozy@708 52
foozy@708 53 \subsection{Tempting approaches that don't work well}
foozy@708 54
foozy@708 55 $BJ#?t$N0[$J$k4D6-$rBP>]$H$7$J$1$l$P$J$i$J$$0lO"$N%=%U%H%&%'%"$NJ]<i$K$O!"(B
foozy@708 56 $B#2$D$N(B``$BI8=`E*$J(B''$BJ}K!$,$"$j$^$9!#(B
foozy@708 57
foozy@708 58 $B#1$DL\$NJ}K!$O!"(B
foozy@708 59 $B$=$l$>$l$,C10l$N4D6-$rBP>]$H$9$kJ#?t$N%V%i%s%A$r4IM}$9$kJ}K!$G$9!#(B
foozy@708 60 $B$3$NJ}K!$NLdBjE@$O!"(B
foozy@708 61 $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
foozy@708 62 $BE4$N5,N'$G$b$C$FK>$`I,MW$,M-$k$3$H$G$9!#(B
foozy@708 63 $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
foozy@708 64 $B$=$N8e$GA4$F$N%P%C%/%]!<%HMQ%j%]%8%H%j$K?;F)$5$;$^$9!#(B
foozy@708 65 $B%P%C%/%]!<%H$G$NJQ99$O!"$=$NEAGE$,99$K%V%i%s%A8BDj$5$l$^$9!#(B
foozy@708 66 $B=jB030$N%V%i%s%A$KE,MQ$5$l$k$h$&$J%P%C%/%]!<%H8~$1$NJQ99$O!"(B
foozy@708 67 $B$*$=$i$/%I%i%$%P$N%3%s%Q%$%k$rK8$2$k$G$7$g$&!#(B
foozy@708 68
foozy@708 69 $B#2$DL\$NJ}K!$O!"(B
foozy@708 70 $B8D!9$N%3!<%IJR$NM-8z!?L58z$r!"(B
foozy@708 71 $B0U?^$9$kBP>]$K0MB8$7$F@Z$jBX$($k$?$a$N>r7oJ8$GKd$a$i$l$?!"(B
foozy@708 72 $BC10l$N%=!<%9%D%j!<$rJ]<i$9$kJ}K!$G$9!#(B
foozy@708 73 $B$3$l$i$N(B``ifdef''$B5-=R$O!"(B
foozy@708 74 Linux $B%+!<%M%k%D%j!<$G$O5v$5$l$F$$$J$$$N$G!"(B
foozy@708 75 $B$3$l$i$r<h$j=|$$$Fe:No$J%D%j!<$r@8@.$9$k$?$a$N!"(B
foozy@708 76 $B<jF0$J$$$7<+F0$N<j=g$,I,MW$G$9!#(B
foozy@708 77 $B$3$NN.57$GJ]<i$5$l$k%3!<%I%Y!<%9$OAa!9$K!"(B
foozy@708 78 $BM}2r$bJ]<i$b:$Fq$J>r7oJ,4t$N!VAM$NAc!W$H$J$k$G$7$g$&!#(B
foozy@708 79
foozy@708 80 $B$3$l$i$N$$$:$l$N<jK!$b!"(B
foozy@708 81 $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
foozy@708 82 $BI8=`%+!<%M%k$H6&$KG[I[$5$l$k(B Linux $B%I%i%$%P$N>l9g!"(B
foozy@708 83 Linus $B;a$N%=!<%9%D%j!<$O!"(B
foozy@708 84 $B@$3&Cf$,@5E}$H$_$J$9%3!<%I$N%3%T!<$+$i9=@.$5$l$^$9!#(B
foozy@708 85 $B>eN.%j%]%8%H%j$K$*$1$k(B``$B;d$N(B''$B%I%i%$%P$O!"(B
foozy@708 86 Linus $B;a$N%=!<%9%D%j!<>e$K2~JQFbMF$,H?1G$5$l$k$^$G$K$O!"(B
foozy@708 87 $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
foozy@708 88
foozy@708 89 $B$3$l$i$N<jK!$O!"(B
foozy@708 90 $B>eN.%j%]%8%H%j$X$N%Q%C%A$NBN:[$r@0$($k$N$rFq$7$/$7$F$7$^$&!"(B
foozy@708 91 $B$H$$$&7gE@$b;}$C$F$$$^$9!#(B
foozy@708 92
foozy@708 93 Mercurial Queues $B$O!"(B
foozy@708 94 $B$3$l$^$G=R$Y$F$-$?>u67$G$N3+H/$r4IM}$9$k$?$a$N!"(B
foozy@708 95 $BNI$$8uJd$H8@$($^$9!#(B
foozy@708 96 $B$^$5$K$3$N$h$&$J>u67$K$*$$$F!"(B
foozy@708 97 MQ $B$O:n6H$r2wE,$K$9$k99$K4v$D$+$NIU2CE*5!G=$r;}$C$F$$$^$9!#(B
foozy@708 98
foozy@708 99 \section{$B%,!<%I$K$h$k>r7oIU$-%Q%C%AE,MQ(B}
foozy@708 100
foozy@708 101 $B$*$=$i$/!"(B
foozy@708 102 $BB?$/$NBP>]4D6-$KBP$9$k7rA4@-$rJ]<i$9$kJ}K!$O!"(B
foozy@708 103 $B=jDj$N>u67$4$H$KE,MQ$5$l$kFCDj$N%Q%C%A$rA*Br$G$-$k$3$H!"(B
foozy@708 104 $B$H8@$($k$G$7$g$&!#(B
foozy@708 105 MQ $B$O!"(B
foozy@708 106 $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
foozy@708 107 $B$H8F$P$l$k5!G=$rDs6!$7$^$9!#(B
foozy@708 108 $B$^$:$O$8$a$K!"(B
foozy@708 109 $B<B83$N$?$a$N4JAG$J%j%]%8%H%j$r:n@.$7$^$7$g$&!#(B
foozy@708 110
foozy@708 111 \interaction{mq.guards.init}
foozy@708 112
foozy@708 113 $B$3$N<j=g$K$h$j!"(B
foozy@708 114 $B0[$J$k%U%!%$%k$rA`:n$9$k$N$G8_$$$K$O0MB8@-$NL5$$#2$D$N%Q%C%A$r;}$D!"(B
foozy@708 115 $B>.$5$J%j%]%8%H%j$,F@$i$l$^$9!#(B
foozy@708 116
foozy@708 117 $B>r7oIU$-E,MQ$N9M$(J}$O!"(B
foozy@708 118 $BG$0U$NC1=c$JJ8;zNs$+$i$J$k(B\emph{$B%,!<%I(B}$B$5$l$?(B``$B;%(B''
foozy@708 119 (tag)$B$r%Q%C%A$KIUM?$7$F$*$-!"(B
foozy@708 120 $B%Q%C%AE,MQ$N:]$K!";HMQ$9$Y$-FCDj$N%,!<%I$r(B MQ $B$KBP$7$F65$($k!"(B
foozy@708 121 $B$H$$$&$b$N$G$9!#(B
foozy@708 122 $B$"$i$+$8$aA*Br$7$F$*$$$?%,!<%I$K1~$8$F!"(B
foozy@708 123 MQ $B$O%,!<%I$5$l$?%Q%C%A$rE,MQ$9$k$+8+Aw$k$+$r7hDj$7$^$9!#(B
foozy@708 124
foozy@708 125 $B8D!9$N%Q%C%A$OG$0U$N?t$N%,!<%I$r;}$D$3$H$,$G$-!"(B
foozy@708 126 $B$=$l$>$l$N%,!<%I$O(B\emph{$B%]%8%F%#%V(B}
foozy@708 127 $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}
foozy@708 128 $B!J(B``$B%,!<%IA*Br;~$K%Q%C%AE,MQ$r8+Aw$k(B''$B!K$N$I$A$i$+$G$9!#(B
foozy@708 129 $B%,!<%I$r;}$?$J$$%Q%C%A$O>o$KE,MQ$5$l$^$9!#(B
foozy@708 130
foozy@708 131 \section{$B%Q%C%A$N%,!<%I$r@)8f$9$k(B}
foozy@708 132
foozy@708 133 \hgxcmd{mq}{qguard} $B%3%^%s%I$O!"(B
foozy@708 134 $B$I$N%,!<%I$r%Q%C%A$KE,MQ$9$k$+$r7hDj$9$k$+!"(B
foozy@708 135 $B$5$b$J$/$P8=;~E@$GM-8z$J%,!<%I$rI=<($7$^$9!#(B
foozy@708 136 $B0z?t$,L5$$>l9g!"8=:_$N:G>e0L%Q%C%A$N%,!<%I$rI=<($7$^$9!#(B
foozy@708 137
foozy@708 138 \interaction{mq.guards.qguard}
foozy@708 139
foozy@708 140 $B%Q%C%A$K%]%8%F%#%V$J%,!<%I$r@_Dj$9$k$K$O!"(B
foozy@708 141 $B%,!<%IL>$N@\F,<-$H$7$F(B ``\texttt{+}'' $B$rIUM?$7$^$9!#(B
foozy@708 142
foozy@708 143 \interaction{mq.guards.qguard.pos}
foozy@708 144
foozy@708 145 $B%Q%C%A$K%M%,%F%#%V$J%,!<%I$r@_Dj$9$k$K$O!"(B
foozy@708 146 $B%,!<%IL>$N@\F,<-$H$7$F(B ``\texttt{-}'' $B$rIUM?$7$^$9!#(B
foozy@708 147
foozy@708 148 \interaction{mq.guards.qguard.neg}
foozy@708 149
foozy@708 150 \begin{note}
foozy@708 151 \hgxcmd{mq}{qguard} $B%3%^%s%I$O!"%Q%C%A$K%,!<%I$r@_Dj$7$^$9$,!"(B
foozy@708 152 $B%Q%C%A$N%,!<%I@_Dj$r(B\emph{$BJQ99(B}$B$7$?$j$O$7$^$;$s!#(B
foozy@708 153 $B$D$^$j!"(B
foozy@708 154 $B%Q%C%A$K(B \hgcmdargs{qguard}{+a +b} $B$rE,MQ$7$?8e$K!"(B
foozy@708 155 $BF1$8%Q%C%A$K(B \hgcmdargs{qguard}{+c} $B$rE,MQ$7$?>l9g!"(B
foozy@708 156 $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
foozy@708 157 \end{note}
foozy@708 158
foozy@708 159 Mercurial $B$O!"(B
foozy@708 160 $B2r<a!&<jF0JT=8$,6&$KMF0W$J7A<0$G!"(B
foozy@708 161 $B%,!<%I>pJs$r(B \sfilename{series} $B$K3JG<$7$^$9(B
foozy@708 162 $B!J8@$$49$($k$J$i!"(B
foozy@708 163 \hgxcmd{mq}{qguard} $B%3%^%s%I$rMxMQ$9$kI,MW$OL5$/!"(B
foozy@708 164 \sfilename{series} $B%U%!%$%k$rD>@\JT=8$7$F$b9=$$$^$;$s!K!#(B
foozy@708 165
foozy@708 166 \interaction{mq.guards.series}
foozy@708 167
foozy@708 168 \section{$B;HMQ$9$k%,!<%I$NA*Br(B}
foozy@708 169
foozy@708 170 \hgxcmd{mq}{qselect} $B%3%^%s%I$O!"M-8z$K$9$k%,!<%I$r7hDj$7$^$9!#(B
foozy@708 171 $B%,!<%I$,7hDj$9$k$3$H$G!"(B
foozy@708 172 $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
foozy@708 173 $B$3$N%3%^%s%I$O$=$l0J30$NF/$-$r$7$^$;$s!#(B
foozy@708 174 $BFC$K!"4{$KE,MQ:Q$_$N%Q%C%A$KBP$7$F$O!"0l@Z2?$b9T$$$^$;$s!#(B
foozy@708 175
foozy@708 176 $B0z?t$,;XDj$5$l$J$$>l9g!"(B
foozy@708 177 \hgxcmd{mq}{qselect} $B%3%^%s%I$O!"(B
foozy@708 178 $B8=;~E@$GM-8z$K$J$C$F$$$k%,!<%I$r#19T$K#1$D$E$DI=<($7$^$9!#(B
foozy@708 179 $B8D!9$N0z?t$O!"E,MQ$5$l$k%,!<%I$NL>A0$H$_$J$5$l$^$9!#(B
foozy@708 180
foozy@708 181 \interaction{mq.guards.qselect.foo}
foozy@708 182
foozy@708 183 $B8=:_A*Br$5$l$F$$$k%,!<%I$N0lMw$,(B
foozy@708 184 \sfilename{guards} $B%U%!%$%k$K3JG<$5$l$F$$$^$9$N$G!"(B
foozy@708 185 $B6=L#$,$"$l$P8+$F$_$k$N$bNI$$$G$7$g$&!#(B
foozy@708 186
foozy@708 187 \interaction{mq.guards.qselect.cat}
foozy@708 188
foozy@708 189 \hgxcmd{mq}{qpush} $B$r<B9T$9$k$3$H$G!"(B
foozy@708 190 $B%,!<%IA*Br$N8z2L$r8+$k$3$H$,$G$-$^$9!#(B
foozy@708 191
foozy@708 192 \interaction{mq.guards.qselect.qpush}
foozy@708 193
foozy@708 194
foozy@708 195 ``\texttt{+}'' $B$J$$$7(B ``\texttt{-}''
foozy@708 196 $B$G;O$^$kL>A0$O%,!<%IL>$K$O$G$-$^$;$s!#(B
foozy@708 197 $B6uGrJ8;z$r4^$`$b$N$b%,!<%IL>$K$O$J$l$^$;$s$,!"(B
foozy@708 198 $B$=$l$$$,$$$NBgDq$NJ8;z$O;HMQ2DG=$G$9!#(B
foozy@708 199 $BIT@5$J%,!<%IL>$N;HMQ$O!"(BMQ $B$K$h$j7Y9p$5$l$^$9!#(B
foozy@708 200
foozy@708 201 \interaction{mq.guards.qselect.error}
foozy@708 202
foozy@708 203 $B%,!<%IA*Br$NJQ99$O!"E,MQ$5$l$k%Q%C%A$r@Z$jBX$($^$9!#(B
foozy@708 204
foozy@708 205 \interaction{mq.guards.qselect.quux}
foozy@708 206
foozy@708 207 $B%M%,%F%#%V$J%,!<%I$,%]%8%F%#%V$J%,!<%I$KM%@h$9$k$3$H$r!"(B
foozy@708 208 $B0J2<$NNc$G8+$k$3$H$,$G$-$^$9!#(B
foozy@708 209
foozy@708 210 \interaction{mq.guards.qselect.foobar}
foozy@708 211
foozy@708 212 \section{MQ $B$N%Q%C%AE,MQ%k!<%k(B}
foozy@708 213
foozy@708 214 $B%Q%C%AE,MQ$NM-L5$rH=Dj$9$k:]$K!"(BMQ $B$O0J2<$N%k!<%k$r;HMQ$7$^$9!#(B
foozy@708 215
foozy@708 216 \begin{itemize}
foozy@708 217 \item $B%,!<%IL5$7%Q%C%A$O>o$KE,MQ$5$l$^$9!#(B
foozy@708 218
foozy@708 219 \item $B8=:_A*Br$5$l$F$$$k%,!<%I$K%^%C%A$9$k%M%,%F%#%V%,!<%I$,$"$k>l9g!"(B
foozy@708 220 $B%Q%C%A$OE,MQ$5$l$^$;$s!#(B
foozy@708 221
foozy@708 222 \item $B8=:_A*Br$5$l$F$$$k%,!<%I$K%^%C%A$9$k%]%8%F%#%V%,!<%I$,$"$k>l9g!"(B
foozy@708 223 $B%Q%C%A$OE,MQ$5$l$^$9!#(B
foozy@708 224
foozy@708 225 \item $B8=:_A*Br$5$l$F$$$k%,!<%I$K%^%C%A$9$k%,!<%I$,2?$bL5$$>l9g!"(B
foozy@708 226 $B%Q%C%A$OE,MQ$5$l$^$;$s!#(B
foozy@708 227
foozy@708 228 \end{itemize}
foozy@708 229
foozy@708 230 \section{Trimming the work environment}
foozy@708 231
foozy@708 232 $B@h$K=R$Y$?(B
foozy@708 233 Linux $B%+!<%M%k8~$1$N(B Infiniband
foozy@708 234 $B%G%P%$%9%I%i%$%P3+H/$G$N%Q%C%AE,MQ$G$O!"(B
foozy@708 235 Linux $B%+!<%M%k$NDL>o$N%=!<%9%D%j!<$O;HMQ$7$^$;$s!#(B
foozy@708 236 $B$=$NBe$o$j!"(B
foozy@708 237 Infiniband $B%G%P%$%9%I%i%$%P3+H/$K4XO"$9$k%=!<%9!?(B
foozy@708 238 $B%X%C%@$N$_$r4^$`%j%]%8%H%j$r:n@.$7!"(B
foozy@708 239 $B$=$3$KBP$7$F%Q%C%A$rE,MQ$9$k$h$&$K$7$^$9!#(B
foozy@708 240 $B$3$N%j%]%8%H%j$N%5%$%:$O%+!<%M%k%j%]%8%H%j$N(B 1\% $B$K<}$^$k$?$a!"(B
foozy@708 241 $B:n6H$r9T$&$N$b4JC1$G$9!#(B
foozy@708 242
foozy@708 243 $B=L>.HG$N%j%]%8%H%j$r:n@.$7$?$J$i$P!"(B
foozy@708 244 $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:
foozy@708 245 $B$3$3$G8@$&!V(Bchoose$B!W!JA*Br!K$O!"(B
foozy@708 246 \hgcmd{update} $B<B9T$r;X$9$N$G$O$J$$$+!)(B
foozy@708 247 $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
foozy@708 248 XXXXXXXXXXXX
foozy@708 249 This is a snapshot of the Linux kernel tree as of a revision
foozy@708 250 of my choosing.
foozy@708 251 XXXXXXXXXXXX
foozy@708 252 $BE,MQBP>]$rA*Br$9$k:]$KI.<T$O!"(B
foozy@708 253 $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
foozy@708 254 $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
foozy@708 255 $B%+!<%M%k%D%j!<Cf$N3+H/$K4XO"$9$kIt0L$K4X$7$F!"(B
foozy@708 256 $B%9%J%C%W%7%g%C%H$K$h$C$F(B``$B>u67(B''$B$HFbMF$,FCDj$G$-$k$?$a!"(B
foozy@708 257 $B=L>.HG%j%]%8%H%j$HDL>oHG$N%+!<%M%k%D%j!<$N$$$:$l$KBP$7$F$b!"(B
foozy@708 258 $B%Q%C%A$NE,MQ$,2DG=$K$J$j$^$9!#(BXXXXXX
foozy@708 259 Since the snapshot
foozy@708 260 preserves the ``shape'' and content of the relevant parts of the
foozy@708 261 kernel tree, I can apply my patches on top of either my tiny
foozy@708 262 repository or a normal kernel tree.
foozy@708 263
foozy@708 264 $BDL>o$O!"(B
foozy@708 265 $B%Q%C%A$NE,MQBP>]$H$J$k%=!<%9%D%j!<$N%Y!<%9$K$O!"(B
foozy@708 266 $B>eN.%j%]%8%H%j$ND>6a$N%9%J%C%W%7%g%C%H$r;HMQ$9$Y$-$G$9!#(B
foozy@708 267 $B$=$&$9$k$3$H$G!"(B
foozy@708 268 $B:n@.$7$?%Q%C%A$r>eN.%j%]%8%H%j$NC4Ev<T$XAwIU$9$k:]$K!"(B
foozy@708 269 $BKX$I!J$"$k$$$OA4$/!K2~JQ$NI,MW$,L5$/$J$k$G$7$g$&!#(B
foozy@708 270
foozy@708 271 \section{Dividing up the \sfilename{series} file}
foozy@708 272
foozy@708 273 $BI.<T$O!"(B\sfilename{series} $B$KNs5s$5$l$k%Q%C%A$r!"(B
foozy@708 274 $B4v$D$+$NO@M}E*$J$^$H$^$j$KJ,N`$7$F$$$^$9!#(B
foozy@708 275 $B$=$l$>$l$N%Q%C%AJ,N`$O!"(B
foozy@708 276 $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
foozy@708 277
foozy@708 278 $BI.<T$N07$C$F$$$k%Q%C%AJ,N`$O!"0J2<$N$h$&$JJB$S$K$J$C$F$$$^$9!#(B
foozy@708 279 $BJ,N`$N=g=x$O=EMW$J$N$G!"J,N`$r>R2p$7$?8e$G@bL@$7$^$9!#(B
foozy@708 280
foozy@708 281 \begin{itemize}
foozy@708 282 \item ``$B<uM}:Q$_(B(accepted)''$BJ,N`(B:
foozy@708 283 $B3+H/%A!<%`$,(B Infiniband $B%5%V%7%9%F%`$NJ]<iC4Ev$KAwIU$7$F!"(B
foozy@708 284 $B4{$K<uM}$O$5$l$F$$$k$b$N$N!"(B
foozy@708 285 $B=L>.HG%j%]%8%H%j$,85$K$7$F$$$k%9%J%C%W%7%g%C%H$K$O!"(B
foozy@708 286 $B$^$@H?1G$5$l$F$$$J$$%Q%C%A$NJ,N`$G$9!#(B
foozy@708 287 $B$3$l$i$O!"(B
foozy@708 288 $B>eN.%j%]%8%H%j$NJ]<iC4Ev$N%j%]%8%H%j$HF1$8>uBV$rF@$k$?$a$K!"(B
foozy@708 289 $B%=!<%9%D%j!<$rJQ49$9$k(B``$BFI$_=P$78BDj(B''$B%Q%C%A$G$9!#(B
foozy@708 290
foozy@708 291 \item ``$B:F:n6H(B(rework)''$BJ,N`(B:
foozy@708 292 $B>eN.%j%]%8%H%j$NJ]<iC4Ev$KAwIU$7$?$b$N$N!"(B
foozy@708 293 $B<uM}$KEv$?$C$FJQ99$rMW5a$5$l$?%Q%C%A$NJ,N`!#(B
foozy@708 294
foozy@708 295 \item ``$BJ]N1(B(pending)''$BJ,N`(B:
foozy@708 296 $B>eN.%j%]%8%H%j$NJ]<iC4Ev$KAwIU$3$=$7$F$$$J$$$b$N$N!"(B
foozy@708 297 $B4{$K:n6H$r=*$($?%Q%C%A$NJ,N`!#(B
foozy@708 298 $B$7$P$i$/$N4V$O(B``$BFI$_=P$78BDj(B''$B$H$7$F07$o$l$^$9!#(B
foozy@708 299 $B>eN.%j%]%8%H%j$NJ]<iC4Ev$K$h$j<uM}$5$l$l$P!"(B
foozy@708 300 $B$3$N%Q%C%A$r(B``$B<uM}:Q$_(B''$BJ,N`$NKvHx$X$H0\F0$7$^$9!#(B
foozy@708 301 $B<uM}$KEv$?$C$FJQ99$,MW5a$5$l$?>l9g!"(B
foozy@708 302 ``$B:F:n6H(B''$BJ,N`$N@hF,$X$H0\F0$7$^$9!#(B
foozy@708 303
foozy@708 304 \item ``$B:n6HCf(B(in progress)''$BJ,N`(B:
foozy@708 305 $BL\2<$N$H$3$m3hH/$K:n6H$,9T$o$l$F$$$k%Q%C%A$NJ,N`!#(B
foozy@708 306 $B$3$NJ,N`$N%Q%C%A$O!"30It$K8x3+$9$Y$-$G$O$"$j$^$;$s!#(B
foozy@708 307
foozy@708 308 \item ``$B%P%C%/%]!<%H(B(backport)''$BJ,N`(B:
foozy@708 309 $B8E$$HG$N%+!<%M%k$N%=!<%9%D%j!<$KE,9g$5$;$k$?$a$N%Q%C%A$NJ,N`!#(B
foozy@708 310
foozy@708 311 \item ``$BFbItMQ(B(do not ship)''$BJ,N`(B:
foozy@708 312 $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
foozy@708 313 $B$3$N$h$&$J%Q%C%A$NNc$H$7$F$O!"(B
foozy@708 314 $B%I%i%$%P<1JLMQ$NKd$a9~$_J8;zNs$NJQ99$r9T$&$3$H$G!"(B
foozy@708 315 $B%=!<%9%D%j!<$N$b$N$H$O0[$J$k%I%i%$%P<BAu$NHG(B
foozy@708 316 \footnote{$BLuCm(B: $B3+H/Cf$N%I%i%$%P$N$3$H!)(B}$B$H!"(B
foozy@708 317 $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
foozy@708 318 $BF0:n3NG'Ey$K$*$1$k6hJL$rMF0W$K$9$k%Q%C%A$,$"$j$^$9!#(B
foozy@708 319
foozy@708 320 \end{itemize}
foozy@708 321
foozy@708 322 $B$G$O$3$3$G!"%Q%C%AJ,N`Hx$r$3$N=gHV$K$9$kM}M3$KLa$j$^$7$g$&!#(B
foozy@708 323 $B%3%s%F%-%9%H$NJQ99$,H/@8$9$k$3$H$G!"(B
foozy@708 324 $B%9%?%C%/>eJ}$N%Q%C%A$X$N:F:n6H(B
foozy@708 325 \footnote{$BLuCm(B: \hgxcmd{mq}{qrefresh} $B$N<B9T$K$h$k%Q%C%A$N=$@5$N$3$H(B}
foozy@708 326 $B$,I,MW$K$J$k$3$H$,L5$$$h$&$K!"(B
foozy@708 327 $B%9%?%C%/Cf$GDl$K$"$k%Q%C%A$[$I0BDj$7$F$$$FM_$7$$$b$N$G$9!#(B
foozy@708 328 $BJQ99$5$l$K$/$$%Q%C%A72$r(B
foozy@708 329 \sfilename{series} $B%U%!%$%k$NKAF,$KCV$/$3$H$G!"(B
foozy@708 330 $B$3$NL\E*$rC#@.$9$k$3$H$,$G$-$^$9!#(B
foozy@708 331
foozy@708 332 $BB>$N%Q%C%A$NE,MQ$r6KNO>eN.%j%]%8%H%j$N>uBV$K6a$$%=!<%9%D%j!<$X9T$&$?$a$K!"(B
foozy@708 333 $B%=!<%9%D%j!<$NJQ49$KI,MW$H;W$o$l$k%Q%C%A$b=EMW$G$9!#(B
foozy@708 334 $B<uM}:Q$_$N%Q%C%A$b;C$/$N4VJ];}$7$F$$$k$N$O$=$N$?$a$G$9!#(B
foozy@708 335
foozy@708 336 ``$B%P%C%/%]!<%H(B''$B$*$h$S(B``$BFbItMQ(B''$B%Q%C%A$O!"(B
foozy@708 337 \sfilename{series} $BKvHx6aJU$rE>!9$H$7$^$9!#(B
foozy@708 338 $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
foozy@708 339 $B$=$N>e!"(B
foozy@708 340 ``$BFbItMQ(B''$B%Q%C%A$OITET9g$,L5$$$h$&$KFbIt$KN1$^$jB3$1$kI,MW$,$"$j$^$9!#(B
foozy@708 341
foozy@708 342 \section{Maintaining the patch series}
foozy@708 343
foozy@708 344 $BI.<T$N:n6H$N:]$K$O!"(B
foozy@708 345 $B%Q%C%AE,MQ$r@)8f$9$k$?$a$KJ#?t$N%,!<%I$r;HMQ$7$F$$$^$9!#(B
foozy@708 346
foozy@708 347 \begin{itemize}
foozy@708 348 \item ``$B<uM}:Q$_(B''$B%Q%C%A$K$O!"(B\texttt{accepted} $B%,!<%I$,IUM?$5$l$^$9!#(B
foozy@708 349 $B$3$N%,!<%I$OKX$I$N>l9g$KM-8z$H$5$l$^$9!#(B
foozy@708 350 $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
foozy@708 351 $B%Q%C%A$rE,MQ$5$;$J$$$h$&$K$9$k$3$H$,(B
foozy@708 352 \footnote{$BLuCm(B: \texttt{accepted} $B%,!<%IIU$-%Q%C%A$rL58z$K$9$k$3$H$G(B}
foozy@708 353 $B$G$-$k$N$G!"(B
foozy@708 354 $B8eB3$N%Q%C%A72$Oe:No$KE,MQ$5$l$^$9!#(B
foozy@708 355
foozy@708 356 \item $B:n6H$O(B``$B40N;(B''$B$7$F$$$k$b$N$N!"(B
foozy@708 357 $B>eN.%j%]%8%H%j$NJ]<iC4Ev$KAwIU$5$l$F$$$J$$%Q%C%A(B
foozy@708 358 \footnote{$BLuCm(B: $B@h$NJ,N`$G8@$&$H$3$m$N(B``$BJ]N1(B(pending)''}$B$K$O!"(B
foozy@708 359 $B2?$b%,!<%I$,IUM?$5$l$^$;$s!#(B
foozy@708 360 $B>eN.%j%]%8%H%j$N%3%T!<$KBP$7$F%Q%C%A%9%?%C%/$rE,MQ$9$k>l9g!"(B
foozy@708 361 $BFC$K2?$b%,!<%I$r;XDj$7$J$/$F$b!"(B
foozy@708 362 $BE,EY$K0BA4$J%=!<%9%D%j!<$rF@$k$3$H$,$G$-$^$9!#(B
foozy@708 363
foozy@708 364 \item $B>eN.%j%]%8%H%j$NJ]<iC4Ev$X$N!J:F!KAwIU$KEv$?$C$F!"(B
foozy@708 365 $B:F:n6H$,I,MW$J%Q%C%A$K$O(B \texttt{rework} $B%,!<%I$,IUM?$5$l$^$9!#(B
foozy@708 366
foozy@708 367 \item $BL\2<3+H/:n6HCf$K$"$k%Q%C%A(B
foozy@708 368 \footnote{$BLuCm(B: $B@h$NJ,N`$G8@$&$H$3$m$N(B``$B:n6HCf(B(in progress)''}$B$K$O!"(B
foozy@708 369 \texttt{devel} $B%,!<%I$,IUM?$5$l$^$9!#(B
foozy@708 370
foozy@708 371 \item $B%P%C%/%]!<%H%Q%C%A$K$O!"(B
foozy@708 372 $BE,MQBP>]%+!<%M%k$N%P!<%8%g%s$r;XDj$9$kJ#?t$N%,!<%I$,IUM?$5$l$^$9!#(B
foozy@708 373 $BNc$($P!"(B~2.6.9 $BHG$X$N%P%C%/%]!<%H$r9T$&%Q%C%A$K$O!"(B
foozy@708 374 \texttt{2.6.9} $B%,!<%I$,IUM?$5$l$^$9!#(B
foozy@708 375
foozy@708 376 \end{itemize}
foozy@708 377
foozy@708 378 $B$3$l$i$N%,!<%IJ,N`$K$h$j!"(B
foozy@708 379 $B:G=*E*$K$I$N$h$&$J%=!<%9%D%j!<$,F@$i$l$k$+$r7hDj$9$k:]$K!"(B
foozy@708 380 $B>/$J$+$i$L=@Fp@-$rF@$k$3$H$,$G$-$^$9!#(B
foozy@708 381 $BB?$/$N>l9g!"(B
foozy@708 382 $BE,@Z$J%,!<%I$NA*Br$O9=C[<j=g$NCf$G<+F02=$5$l$F$$$^$9$,!"(B
foozy@708 383 $BFCJL$J>u678~$1$K%,!<%I$ND4@0$r<jF0$G9T$&$3$H$b2DG=$G$9!#(B
foozy@708 384
foozy@708 385 \subsection{The art of writing backport patches}
foozy@708 386
foozy@708 387 MQ $B$r;HMQ$9$k$3$H$G!"(B
foozy@708 388 $B%P%C%/%]!<%H%Q%C%A$N:n@.$OC1=c$J:n6H$H$J$j$^$9!#(B
foozy@708 389 $B5lHG$N%+!<%M%kG[2<$K$*$$$F$b%I%i%$%P$,@5>o$K2TF0$9$k$h$&$K!"(B
foozy@708 390 $B5lHG$N%+!<%M%k$K$*$$$FDs6!$5$l$F$$$J$$5!G=$r;HMQ$9$k%3!<%I$NJQ99$,!"(B
foozy@708 391 $B%P%C%/%]!<%H%Q%C%A$N$9$Y$-$3$H$NA4$F$G$9!#(B
foozy@708 392
foozy@708 393 $BNI$$%P%C%/%]!<%H%Q%C%A$r=q$/:]$N%4!<%k$O!"(B
foozy@708 394 $BBP>]$H$9$k5lHG%+!<%M%k8~$1$K=q$$$?$+$N$h$&$K!"(B
foozy@708 395 $B$"$J$?$N%3!<%I$rJQ99$9$k$h$&$J%Q%C%A$K$9$k$3$H$G$9!#(B
foozy@708 396 $B%Q%C%A$,$G$7$c$P$i$J$$Dx!"M}2r$HJ]<i$,MF0W$K$J$j$^$9!#(B
foozy@708 397 $B%3!<%ICf$NBgNL$N(B \texttt{\#ifdef}$B!J>r7o$K1~$8$FE,MQ$5$l$k%3!<%IJR!K(B
foozy@708 398 $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
foozy@708 399 $B%P!<%8%g%s0MB8$J(B \texttt{\#ifdef} $B$r%Q%C%A$K;}$A9~$`$Y$-$G$O$"$j$^$;$s!#(B
foozy@708 400 $B%P!<%8%g%s0MB8$J(B \texttt{\#ifdef} $B$r;HMQ$9$kBX$o$j$K!"(B
foozy@708 401 $B8D!9$N%Q%C%A$O%P!<%8%g%s$K0MB8$7$J$$JQ99$r9T$&$h$&$K$7$F!"(B
foozy@708 402 $B%Q%C%A$NE,MQ$r%,!<%I$K$h$C$F@)8f$9$Y$-$G$9!#(B
foozy@708 403
foozy@708 404 ``$BDL>o(B''$B$N%Q%C%A$H!"(B
foozy@708 405 $B$=$NE,MQ7k2L$r99$KJQ99$9$k%P%C%/%]!<%H%Q%C%A$H$r!"(B
foozy@708 406 $BJL8D$N%0%k!<%W$KJ,N%$9$k$N$K$O#2$D$NM}M3$,$"$j$^$9!#(B
foozy@708 407 $BBh#1$NM}M3$O!"(B
foozy@708 408 $B$3$l$i$N%Q%C%A$,:.$6$j9g$C$?>l9g$K!"(B
foozy@708 409 $B>eN.%j%]%8%H%j$NJ]<iC4Ev$X$N%Q%C%AAwIU$N<+F02=$N:]$K!"(B
foozy@708 410 \hgext{patchbomb} $B3HD%$N$h$&$J%D!<%k$r;H$&$3$H$,Fq$7$/$J$k$?$a$G$9!#(B
foozy@708 411 $BBh#2$NM}M3$O!"(B
foozy@708 412 $B8eB3$NDL>o%Q%C%A$NE,MQ%3%s%F%-%9%H(B
foozy@708 413 \footnote{$BLuCm(B: \command{patch} $B%U%!%$%k$K$*$1$k!V%3%s%F%-%9%H!W(B}
foozy@708 414 $B$r%P%C%/%]!<%H%Q%C%A$,:.Mp$5$;$F$7$^$$!"(B
foozy@708 415 $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
foozy@708 416 $BDL>o%Q%C%A$re:No$KE,MQ$9$k$3$H$,$G$-$J$/$J$C$F$7$^$&$?$a$G$9!#(B
foozy@708 417
foozy@708 418 \section{Useful tips for developing with MQ}
foozy@708 419
foozy@708 420 \subsection{Organising patches in directories}
foozy@708 421
foozy@708 422 MQ $B$rMxMQ$7$?<B:_$9$k%W%m%8%'%/%H$G:n6H$r$7$F$$$k$N$G$"$l$P!"(B
foozy@708 423 $BB?$/$N%Q%C%A$rC_@Q$9$k$3$H$bFq$7$$$3$H$G$O$"$j$^$;$s!#(B
foozy@708 424 $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
foozy@708 425
foozy@708 426 $B%Q%C%A$r8DJL$NO@M}E*$J$^$H$^$j$KJ,N`$G$-$k$N$G$"$l$P!"(B
foozy@708 427 MQ $B$O%Q%C%AL>$K%Q%96h@Z$j$,4^$^$l$F$$$F$bLdBj$J$$$N$G!"(B
foozy@708 428 $B$=$l$>$l$N%Q%C%A$r0[$J$k%G%#%l%/%H%j$K3JG<$9$k$3$H$b$G$-$^$9(B
foozy@708 429 \footnote{$BLuCm(B: MQ $B$O%Q%C%AFbMF$NJ]B8@h$H$7$F!"(B
foozy@708 430 $B%Q%C%AL>$HF1L>$N%U%!%$%k$r:n@.$9$k$?$a!"(B
foozy@708 431 $B%Q%C%AL>$K%Q%96h@Z$j$,4^$^$l$k>l9g!"(B
foozy@708 432 MQ $B$O<+F0E*$K%5%V%G%#%l%/%H%j$r:n@.$7$^$9(B}$B!#(B
foozy@708 433
foozy@708 434 \subsection{Viewing the history of a patch}
foozy@708 435 \label{mq-collab:tips:interdiff}
foozy@708 436
foozy@708 437 $BD94|4V$K$o$?$C$F%Q%C%A$N3+H/$r9T$&>l9g!"(B
foozy@708 438 \ref{sec:mq:repo} $B@a$G=R$Y$?$h$&$K!"(B
foozy@708 439 $B%Q%C%A$r%j%]%8%H%j$G4IM}$9$k$N$,NI$$$G$7$g$&!#(B
foozy@708 440 $B$=$N>l9g$OAa!9$K!"(B
foozy@708 441 $B%Q%C%A$NJQ99MzNr$N;2>H$K(B
foozy@708 442 \hgcmd{diff} $B$,;H$($J$$$3$H$K5$IU$/$3$H$G$7$g$&!#(B
foozy@708 443 $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
foozy@708 444 $B%?%$%`%9%?%s%W$d%Q%C%A99?7;~$N%G%#%l%/%H%jL>Ey$r2~JQ$9$k$3$H$G(B
foozy@708 445 MQ $B$,;(2;$r2C$($F$7$^$C$F$$$k$3$H$K860x$,$"$j$^$9!#(B
foozy@708 446
foozy@708 447 Mercurial $B$KF1:-$5$l$F$$$k(B \hgext{extdiff} $B3HD%$r;H$&$3$H$G!"(B
foozy@708 448 $B#2$D$NHG$N%Q%C%A:9J,$r4vJ,FI$_$d$9$$$b$N$K$9$k$3$H$,$G$-$^$9!#(B
foozy@708 449 $B$3$N3HD%$r;H$&$?$a$K$O!"(B
foozy@708 450 $B%5!<%I%Q!<%F%#!<%Q%C%1!<%8$G$"$k(B
foozy@708 451 \package{patchutils}~\cite{web:patchutils} $B$,I,MW$G$9!#(B
foozy@708 452 $B$3$N%Q%C%1!<%8$,Ds6!$9$k(B \command{interdiff} $B$H$$$&%3%^%s%I$O!"(B
foozy@708 453 $B:9J,4V$N:9J,$r#1$D$N:9J,$H$7$FI=<($7$^$9!#(B
foozy@708 454 $BF1$8:9J,$N#2$D$NHG(B
foozy@708 455 \footnote{$BLuCm(B: $B!VF1$8%Q%C%A$N0[$J$kHG!W$N0U$+!)(B}
foozy@708 456 $B$KBP$7$F$3$N%3%^%s%I$rE,MQ$9$k$H!"(B
foozy@708 457 $B:G=i$NHG$+$i<!$NHG$X$HJQ99$9$k$?$a$N:9J,$r@8@.$7$^$9!#(B
foozy@708 458
foozy@708 459 $B$$$D$b$N$h$&$K!"(B
foozy@708 460 \hgrc $B%U%!%$%k$N(B \rcsection{extensions}
foozy@708 461 $B%;%/%7%g%s$K9T$rDI2C$9$k$3$H$G!"(B
foozy@708 462 \hgext{extdiff} $B3HD%$rM-8z2=$9$k$3$H$,$G$-$^$9!#(B
foozy@708 463
foozy@708 464 \begin{codesample2}
foozy@708 465 [extensions]
foozy@708 466 extdiff =
foozy@708 467 \end{codesample2}
foozy@708 468
foozy@708 469 \command{interdiff} $B%3%^%s%I$O#2$D$N%U%!%$%kL>$N;XDj$,I,MW$G$9$,!"(B
foozy@708 470 \hgext{extdiff} $B3HD%$O!"(B
foozy@708 471 $B$=$l$>$lG$0U$N?t$N%U%!%$%k$rG[2<$K;}$D!"(B
foozy@708 472 $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
foozy@708 473 $B$=$N$?$a!"(B
foozy@708 474 $B$3$l$i#2$D$N%G%#%l%/%H%jG[2<$N8D!9$N%U%!%$%kBP$KBP$7$F(B
foozy@708 475 \command{interdiff} $B$r<B9T$9$k>.$5$J%W%m%0%i%`$,I,MW$G$9!#(B
foozy@708 476 $BK\=q$N%=!<%9%3!<%I%j%]%8%H%j$K$*$1$k(B
foozy@708 477 \dirname{examples} $B%G%#%l%/%H%jG[2<$K!"(B
foozy@708 478 \sfilename{hg-interdiff} $B$H$7$F3JG<$5$l$F$$$^$9!#(B
foozy@708 479
foozy@708 480 \excode{hg-interdiff}
foozy@708 481
foozy@708 482 \sfilename{hg-interdiff} $B$,%7%'%k$N%3%^%s%I8!:w%Q%9>e$KM-$k>l9g!"(B
foozy@708 483 MQ $B$N%Q%C%A%G%#%l%/%H%j$+$i0J2<$N$h$&$K$7$F5/F0$9$k$3$H$,$G$-$^$9!#(B
foozy@708 484
foozy@708 485 \begin{codesample2}
foozy@708 486 hg extdiff -p hg-interdiff -r A:B my-change.patch
foozy@708 487 \end{codesample2}
foozy@708 488
foozy@708 489 $B$*$=$i$/$3$ND9$?$i$7$$%3%^%s%I$r2?EY$b;H$&$3$H$K$J$k$G$7$g$&$+$i!"(B
foozy@708 490 $B:FEY(B \hgrc $B$rJT=8$7$F!"(B
foozy@708 491 \hgext{hgext} $B$r(B Mercurial $B$NIaDL$N%3%^%s%IJB$K;H$($k$h$&$K$7$^$7$g$&!#(B
foozy@708 492
foozy@708 493 \begin{codesample2}
foozy@708 494 [extdiff]
foozy@708 495 cmd.interdiff = hg-interdiff
foozy@708 496 \end{codesample2}
foozy@708 497
foozy@708 498 $B$3$N5-=R$K$h$j(B \texttt{interdiff} $B$,(B
foozy@708 499 \hgext{hgext} $B$+$iMxMQ$G$-$k$h$&$K$J$j$^$9$N$G!"(B
foozy@708 500 $B@h$N(B \hgxcmd{extdiff}{extdiff} $B5/F0$bC;$/$J$C$F4vJ,;H$$$d$9$/$J$k$G$7$g$&!#(B
foozy@708 501
foozy@708 502 \begin{codesample2}
foozy@708 503 hg interdiff -r A:B my-change.patch
foozy@708 504 \end{codesample2}
foozy@708 505
foozy@708 506 \begin{note}
foozy@708 507 \command{interdiff} $B%3%^%s%I$O!"(B
foozy@708 508 $B>l9g$@$1@5$7$/5!G=$7$^$9!#(B
foozy@708 509 The \command{interdiff} command works well only if the underlying
foozy@708 510 files against which versions of a patch are generated remain the
foozy@708 511 same.
foozy@708 512 $B%Q%C%A$N@8@.!&%U%!%$%k$NJQ99$*$h$S%Q%C%A$N99?7$r9T$C$?>l9g!"(B
foozy@708 513 \command{interdiff} $B$OM-MQ$J=PNO$r@8@.$7$J$$$3$H$,$"$j$^$9!#(B
foozy@708 514 \end{note}
foozy@708 515
foozy@708 516 \hgext{extdiff} $B3HD%$O!"(B
foozy@708 517 MQ $B%Q%C%A$NI=<(5!G=$N8~>e$KN1$^$i$J$$M-MQ$J$b$N$G$9!#(B
foozy@708 518 \hgext{extdiff} $B3HD%$K4X$9$k>\:Y$O!"(B
foozy@708 519 \ref{sec:hgext:extdiff} $B@a$r;2>H$7$F$/$@$5$$!#(B
foozy@708 520
foozy@708 521 %%% Local Variables:
foozy@708 522 %%% mode: latex
foozy@708 523 %%% TeX-master: "00book"
foozy@708 524 %%% End: