Mercurial > hgbook
changeset 302:6a31e428ba3b
more branch.tex
author | Yoshiki Yazawa <yaz@cc.rim.or.jp> |
---|---|
date | Fri, 08 Feb 2008 21:43:34 +0900 |
parents | 828f5606faf0 |
children | 268c49158a81 |
files | ja/branch.tex |
diffstat | 1 files changed, 83 insertions(+), 40 deletions(-) [+] |
line wrap: on
line diff
--- a/ja/branch.tex Fri Feb 08 19:44:10 2008 +0900 +++ b/ja/branch.tex Fri Feb 08 21:43:34 2008 +0900 @@ -113,46 +113,85 @@ $BI=<($9$k!%(B \interaction{tag.log} -Any time you need to provide a revision~ID to a Mercurial command, the -command will accept a tag name in its place. Internally, Mercurial -will translate your tag name into the corresponding revision~ID, then -use that. +%Any time you need to provide a revision~ID to a Mercurial command, the +%command will accept a tag name in its place. Internally, Mercurial +%will translate your tag name into the corresponding revision~ID, then +%use that. +%\interaction{tag.log.v1.0} + +Mecurial$B%3%^%s%I$K%j%S%8%g%sHV9f$rEO$9I,MW$,$"$k>l9g!$>o$K%?%0%M!<%`$r;H(B +$B$&$3$H$,$G$-$k!%FbItE*$K$O(BMercurial$B$O%?%0%M!<%`$rBP1~$9$k%j%S%8%g%s(BID$B$K(B +$BJQ49$7$F;HMQ$7$F$$$k!%(B \interaction{tag.log.v1.0} -There's no limit on the number of tags you can have in a repository, -or on the number of tags that a single revision can have. As a -practical matter, it's not a great idea to have ``too many'' (a number -which will vary from project to project), simply because tags are -supposed to help you to find revisions. If you have lots of tags, the -ease of using them to identify revisions diminishes rapidly. +%There's no limit on the number of tags you can have in a repository, or +%on the number of tags that a single revision can have. As a practical +%matter, it's not a great idea to have ``too many'' (a number which will +%vary from project to project), simply because tags are supposed to help +%you to find revisions. If you have lots of tags, the ease of using them +%to identify revisions diminishes rapidly. + +$B%j%]%8%H%j$NCf$G;H$($k%?%0?t!$0l$D$N%j%S%8%g%s$KIU$1$i$l$k%?%0?t$K>e8B$O(B +$B$J$$!%;v>p$O%W%m%8%'%/%H$K$h$C$F0[$J$k$@$m$&$,!$<BMQE*$K$O%?%0$rB?$/IU$1(B +$B$9$.$k$3$H$O$"$^$jNI$$9M$($H$O8@$($J$$!%%?%0$H$O%j%S%8%g%s$r8+$D$10W$/$9(B +$B$k$?$a$K;H$&$b$N$@$+$i$@!%%?%0$rB?$/IU$1$9$.$k$H!$%?%0$K$h$C$F%j%S%8%g%s(B +$B$N6hJL$r$9$k$3$H$,$H$?$s$KFq$7$/$J$k!%(B -For example, if your project has milestones as frequent as every few -days, it's perfectly reasonable to tag each one of those. But if you -have a continuous build system that makes sure every revision can be -built cleanly, you'd be introducing a lot of noise if you were to tag -every clean build. Instead, you could tag failed builds (on the -assumption that they're rare!), or simply not use tags to track -buildability. +%For example, if your project has milestones as frequent as every few +%days, it's perfectly reasonable to tag each one of those. But if you +%have a continuous build system that makes sure every revision can be +%built cleanly, you'd be introducing a lot of noise if you were to tag +%every clean build. Instead, you could tag failed builds (on the +%assumption that they're rare!), or simply not use tags to track +%buildability. + +$BNc$($P$"$J$?$N%W%m%8%'%/%H$,?tF|Kh$K%^%$%k%9%H!<%s$r7^$($F$$$k>l9g!$$=$l(B +$B$>$l$K%?%0$rIU$1$k$3$H$OM}$KE,$C$F$$$k!%$7$+$7!$$=$l$>$l$N%j%S%8%g%s$,%/(B +$B%j!<%s$K%S%k%I$G$-$k$+8!>Z$9$k$?$a$N%S%k%I%7%9%F%`$r;}$C$F$$$k$h$&$J>l9g!$(B +$B$=$l$>$l$N%/%j!<%s%S%k%I$K%?%0$rIU$1$F$$$?$i<}=&$,$D$+$J$/$J$k$@$m$&!%$`(B +$B$7$m%S%k%I$,<:GT$9$k$3$H$,>/$J$$$N$G$"$l$P!$<:GT$7$?%j%S%8%g%s$K%?%0$r$D(B +$B$1$?J}$,NI$$$7!$C1$K%S%k%I$,DL$C$?$3$H$r<($9$N$K%?%0$rMQ$$$k$Y$-$G$O$J$$(B +$B$+$bCN$l$J$$!%(B -If you want to remove a tag that you no longer want, use -\hgcmdargs{tag}{--remove}. +%If you want to remove a tag that you no longer want, use +%\hgcmdargs{tag}{--remove}. +%\interaction{tag.remove} +%You can also modify a tag at any time, so that it identifies a +%different revision, by simply issuing a new \hgcmd{tag} command. +%You'll have to use the \hgopt{tag}{-f} option to tell Mercurial that +%you \emph{really} want to update the tag. +%\interaction{tag.replace} +%There will still be a permanent record of the previous identity of the +%tag, but Mercurial will no longer use it. There's thus no penalty to +%tagging the wrong revision; all you have to do is turn around and tag +%the correct revision once you discover your error. + +$B%?%0$,I,MW$J$/$J$C$?;~$O(B\hgcmdargs{tag}{--remove}$B%3%^%s%I$G>C$9$3$H$,$G(B +$B$-$k!%(B \interaction{tag.remove} -You can also modify a tag at any time, so that it identifies a -different revision, by simply issuing a new \hgcmd{tag} command. -You'll have to use the \hgopt{tag}{-f} option to tell Mercurial that -you \emph{really} want to update the tag. +$B%?%0$O$$$D$G$bJQ99$G$-$k$N$G!$$"$k%?%0$rB>$N%j%S%8%g%s$KIU$1BX$($k$h$&$J(B +$B$3$H$b$G$-$k!%(B +$B%?%0$r(B\emph{$BK\Ev(B}$B$K99?7$7$?$$>l9g$O(B\hgopt{tag}{-f}$B%*%W%7%g%s$r;XDj$9$kI,(B +$BMW$,$"$k!%(B \interaction{tag.replace} -There will still be a permanent record of the previous identity of the -tag, but Mercurial will no longer use it. There's thus no penalty to -tagging the wrong revision; all you have to do is turn around and tag -the correct revision once you discover your error. +$B%?%0$N0JA0$N%"%$%G%s%F%#%F%#!<$N1JB3E*$J5-O?$O;D$C$F$$$k$,!$(BMercurial$B$O$b(B +$B$O$d$3$l$rMxMQ$7$J$$!%$h$C$F!$4V0c$C$?%j%S%8%g%s$K%?%0$rIU$1$k$3$H$G%Z%J(B +$B%k%F%#$,2]$;$i$l$k$H$$$&$3$H$O$J$$!%4V0c$$$r8+$D$1$?;~$OC1$K$d$jD>$7$F@5(B +$B$7$$%j%S%8%g%s$K%?%0$rIU$1$l$P$h$$!%(B -Mercurial stores tags in a normal revision-controlled file in your -repository. If you've created any tags, you'll find them in a file -named \sfilename{.hgtags}. When you run the \hgcmd{tag} command, -Mercurial modifies this file, then automatically commits the change to -it. This means that every time you run \hgcmd{tag}, you'll see a -corresponding changeset in the output of \hgcmd{log}. +%Mercurial stores tags in a normal revision-controlled file in your +%repository.If you've created any tags, you'll find them in a file +%named \sfilename{.hgtags}.When you run the \hgcmd{tag} command, +%Mercurial modifies this file, then automatically commits the change to +%it.This means that every time you run \hgcmd{tag}, you'll see a +%corresponding changeset in the output of \hgcmd{log}. +%\interaction{tag.tip} + +Mercurial$B$O%?%0$r%j%]%8%H%j$NCf$NDL>o$N%j%S%8%g%s4IM}%U%!%$%k$KJ]B8$9$k!%(B +$B%?%0$r:n@.$7$?;~!$(B\sfilename{.hgtags}$B$H$$$&%U%!%$%k$K%?%0$,J]B8$5$l$F$$(B +$B$k$N$,J,$+$k$@$m$&!%(B\hgcmd{tag}$B%3%^%s%I$r<B9T$9$k$H(BMercurial$B$O$3$N%U%!%$(B +$B%k$rJQ99$7!$JQ99$r$3$N%U%!%$%k$K%3%_%C%H$9$k!%$D$^$j(B\hgcmd{tag}$B$r<B9T$9(B +$B$k$H$$$D$b(B\hgcmd{log}$B$N=PNO$NCf$KBP1~$9$k%A%'%s%8%;%C%H$r8+$k$3$H$K$J$k!%(B \interaction{tag.tip} %\subsection{Handling tag conflicts during a merge} @@ -182,12 +221,16 @@ %\subsection{Tags and cloning} \subsection{$B%?%0$H%/%m!<%s(B} -You may have noticed that the \hgcmd{clone} command has a -\hgopt{clone}{-r} option that lets you clone an exact copy of the -repository as of a particular changeset. The new clone will not -contain any project history that comes after the revision you -specified. This has an interaction with tags that can surprise the -unwary. +%You may have noticed that the \hgcmd{clone} command has a +%\hgopt{clone}{-r} option that lets you clone an exact copy of the +%repository as of a particular changeset.The new clone will not contain +%any project history that comes after the revision you specified. This +%has an interaction with tags that can surprise the unwary. + +\hgcmd{clone}$B%3%^%s%I$,(B\hgopt{clone}{-r}$B%*%W%7%g%s$r;}$C$F$$$k$3$H$K$9$G(B +$B$K5$$E$$$F$$$k$+$bCN$l$J$$!%$3$N%*%W%7%g%s$GFCDj$N%A%'%s%8%;%C%H$N%3%T!<(B +$B$r%/%m!<%s$9$k$3$H$,$G$-$k$,!"%/%m!<%s$7$?%3%T!<$O!$;XDj$7$?%j%S%8%g%s8e(B +$B$NMzNr$r;}$?$J$$$?$a!"ITMQ?4$J%f!<%6$O$7$P$7$P6C$/$3$H$K$J$k!#(B Recall that a tag is stored as a revision to the \sfilename{.hgtags} file, so that when you create a tag, the changeset in which it's @@ -266,7 +309,7 @@ \interaction{branch-repo.new} %\section{Don't repeat yourself: merging across branches} -\section{$B<+F02=$5$l$?%V%i%s%A4V$G$N%^!<%8(B} +\section{$B<j$G7+$jJV$9$Y$-$G$O$J$$!'%V%i%s%A4V$G$N%^!<%8(B} In many cases, if you have a bug to fix on a maintenance branch, the chances are good that the bug exists on your project's main branch