<h2><font color="#009999">Desenvolvimento de Fonte aberta com CVS: Errata</font></h2>
</center>
<p><center><i>┌ltimas modificaτ⌡es: Domingo 13 Agosto 2000</i></center>
<p>
<hr>
<p>Esta pßgina lista erros conhecidos em Desenvolvimento de Fonte Aberto Com CVS. A maioria dos erros s≤ estß presente na primeira impressπo,
tendo sido corrigido pelo segundo; quando um erro estß presente em ambos, isso Θ notßvel. Os erros sπo divididos em duas categorias:
<ul>
<li>Erros Potencialmente Significantes sπo uns que poderiam confundir de fato ou
enganar um leitor.
<li>Erros Provavelmente Insignificantes sπo erratas inocentes e semelhantes.</li>
</ul>
<p>Note que estes erros s≤ estπo presentes na versπo freeware do livro --
Nπo hß nenhum erro conhecido na versπo de <a href="http://cvsbook.red-bean.com/">online</a>, porque n≤s corrigimos esses assim que n≤s ouvimos falar deles: -). Se vocΩ descobrir um erro no livro nπo
listado aqui, por favor mande imediatamente um email para: <a href="mailto:bug-cvsbook@red-bean.com">bug-cvsbook@red-bean.com</a>.
<p>
<hr>
<p>
<h1>Erros Potencialmente Significantes</h1>
<p>
<ol>
<li>(primeiro e segundas impress⌡es) xvi de pßg., URL para a composiτπo de Stallman,: <br>
O vφnculo para a composiτπo de Richard Stallman mudou de:
<li>(<i>somente primeira impressπo</i>) <b>p. 75, </b><b>primeira tela de exemplo</b>:<br>
<ul>
<li>O " <Body " na segunda linha Θ esp·rio e deveria ser ignorado.
<li>Deveria haver um ">" depois de " <stdio.h ".</li>
</ul>
<br>
Deste modo, o exemplo deveria ler:
<p>floss$ pwd<br>
/home/whatever/myproj_branch<br>
floss$ cat b-subdir/random.c <br>
/* Print out a random number. */<br>
#include <stdio.h><br>
void main ()<br>
{<br>
printf ("A random number.\n");<br>
printf ("Get the joke?\n");<br>
}<br>
floss$ <br>
</p>
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 76, </b><b>primeira tela de exemplo</b>:<br>
Aφ deveria um " >>>>>>> " precedendo os " 1.2.2.2 ", assim o exemplo deveria ler:<br>
<pre>floss$ pwd
/home/whatever/myproj
floss$ cat b-subdir/random.c
/* Print out a random number. */
#include <stdio.h>
void main ()
{
<<<<<<< random.c
printf ("A random number.\n");
=======
printf ("A random number.\n");
printf ("Get the joke?\n");
>>>>>>> 1.2.2.2
}
floss$
</pre>
<p> </p>
<li>(<i>fsomente primeira impressπo</i>) <b>pßg. 76, </b><b>segunda tela de exemplo</b>:<br>
Por alguma razπo o comando inicial aparece uma vez antes do lembrete e novamente depois disto. Somente elimina as primeiras duas linhas do exemplo, assim se parece:<br>
<pre>floss$ cvs -q update -j "Release-1999_05_01-bugfixes:2 days ago" \
Merging differences between 1.2.2.1 and 1.2.2.2 into random.c
floss$
</pre>
<p> </p>
<li>(somente primeira impressπo) <b>pßg. 77, segunda tela de exemplo</b>:<br>
Eu esqueci p⌠r um backslash antes da primeira break de linha, para indicar que o comando continua na pr≤xima linha. AlΘm, a break de linha acontece em um desnecessariamente mancha desajeitada. O exemplo deveria se parecer
Merging differences between 1.2.2.1 and 1.2.2.2 into random.c
floss$
</pre>
<li>(<i>somente primeira impressπo</i>) <b> pßg. 21, terceiro exemplo de tela</b>:<br>
O prompt incorretamente Θ "C:\WINDOWS>", mas deveria ser um prompt de Unix, " floss$"
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>pßg. 47, seτπo de tφtulos:</b><br>
A seτπo de tφtulo " The Slow Method Of Updating " deveria ler "The Slow Method Of Reverting "..
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 49, seτπo de tφtulos</b>:<br>
A seτπo de tφtulos "The Fast Method Of Updating" deveria ler "The Fast Method Of Reverting".
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 57, texto imediatamente exemplo de c≤digo de meio seguinte</b>:<br>
A declaraτπo parentΘtica deveria se referir a segundos, nπo minutos, assim
"... (unless there were any commits during the last second of the day,
which there weren't)."
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>pßg. 104, parßgrafo pequeno entre dois exemplos de tela</b>:<br>
A declaraτπo parentΘtica "(VocΩ precisarß fazer provavelmente o ·ltimo passo como o superuser)"
estß extraviado -- deveria aparecer de fato no pr≤ximo parßgrafo de texto corrente, porque se refere ao comando makeáinstall , nπo ao make.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 131</b>:<br>
O texto troca t≤picos sutilmente de um modo confuso. O meio superior das conversas de pßgina sobre algumas propriedades compartilhadas por trΩs arquivos administrativos diferentes. Entπo o mais baixo meio (direito depois da Sugestπo) lanτamentos em uma descriτπo de um desses arquivos em particular, sem sempre anunciar que o t≤pico mudou do general para o especφfico. Fixar isto, mude a primeira linha de texto corrente depois da Sugestπo ler:<p>" O arquivo commitinfo Θ para ganchos genΘricos vocΩ quer carga em todo confie. Aqui estß algumas linhas de commitinfo de exemplo: ...."
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 132, loginfo expansion examples</b>:<br>
The text claims that %-expansions always begin with the path to the
repository. I could swear I experimented to make sure this was true, but I
must have been asleep, because it turns out it expands to the <i>subdirectory</i>
in the repository. Thus, all the one-line screen examples on this page that
start with <tt>/usr/local/newrepos</tt> should be changed to start with <tt>myproj</tt>
instead.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 171, second paragraph</b>:<br>
Until its last sentence, this paragraph falsely implies that the only way to
restrict use of the <tt>cvs admin</tt> command is via Unix permissions.
Here is a more accurate rewording of the paragraph:
<p>"Although its name might seem to imply that only the designated CVS
administrator can use it, normally anyone can run <tt>cvs admin</tt>,
as long as they have write access to the project in question. However, if a
Unix group named <tt>cvsadmin</tt> exists the server machine, then use of
this command is restricted to members of that group (except that the <tt>cvs admin -k</tt>
command is still allowed for all). Either way, <tt>cvs admin</tt> is
best used with caution; the ability to change a project's history is mild
compared with the other potentially damaging things it can do."
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 232, second paragraph of running text</b>:<br>
The word "information" in the first sentence should be
"Info" (it refers to the GNU Info documentation format, not to
information in general).
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 238, <tt>-e</tt> <i>EDITOR</i>
option</b>:<br>
The third line of text is missing two words; it deveria ler "...
invokes the editor based on the CVSEDITOR, VISUAL, or EDITOR environment
variables, ..."
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 238, <tt>--help</tt> [<i>COMMAND</i>] <tt>-H</tt> [<i>COMMAND</i>]</b>:<br>
These are two versions of the same option, and are never given at the same
time. Therefore, there should be a line break between them (before the
capital "<tt>-H</tt>").
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 241, <tt>-v</tt> <tt>--version</tt></b>:<br>
These two are the same option, and so are never given at the same time.
Therefore, there should be a line break before the "<tt>--version</tt>".
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 247, <tt>-j</tt> option(s)</b>:<br>
One can invoke <tt>cvs checkout</tt> with either one <tt>-j</tt> option
or two. Insert the word "or" before the second <tt>-j</tt> option,
to make this clear.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 260, top of page</b>:<br>
There should be a paragraph break, and a loosening of indentation, after the
first sentence (the one ending in "earlier"). This is because what
follows applies to <i>all</i> the items in the inner bulleted list,
including the ones on the preceding page, not just the final item (which
happens to be at the top of this page).
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 276, screen example at middle of page</b>:<br>
(Essentially the same error as mentioned earlier for page 132).<br>
The expansion is prefixed by the subdirectory in the repository, not the
full path to the repository. Change the text and screen example at the
middle of the page to read like this:
<p>"If any % expansion is done at all, the expansion is prefixed by the
subdirectory in the repository. So that last expansion would actually be:
<p><tt>myproj hello.c,1.17 README.txt,1.12</tt>
<p> </p>
</li>
</ol>
<p>
<hr>
<p>
<h1>Probably Insignificant Errors</h1>
<p>
<ol>
<li>(<i>somente primeira impressπo</i>) <b>p. 18, second-to-last paragraph</b>:<br>
The word "compiled" should be "completed".
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 31, diff example</b>:<br>
The "<tt>[0=9.]</tt>" in the changed ("!") line in the
first diff hunk deveria ler "<tt>[0-9.]</tt>". I have no idea how
that error crept in, as I simply cut and pasted from code that had been
working fine. Very odd.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 31, running text near middle of page</b>:<br>
Just a simple typo, "smae" instead of "same".
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 60, fourth paragraph of running text</b>:<br>
Instead of "Tags differs ..." it deveria ler "Tags differ
...".
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 131, first line of the Tip</b>:<br>
It starts off "Regular expressions being ...", but "Regular
expressions are ..." would be more correct and more readable.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 227, first two subheadings</b>:<br>
Both of these subheadings capitalize the word "<b>Export</b>";
however, it should not be capitalized because it is the name of a CVS
command (<tt>cvs export</tt>) and is always invoked lower-case. (Note
that the capital "<tt>-D</tt>" in the first subheading is correct,
however.)
<p>
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 249, <tt>-D</tt> option</b>:<br>
Missing a period at the end of a sentence (after the word
"revisions").
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 261, 262, 266</b>:<br>
I inconsistently used "Alternative names" on these pages, instead
of "Alternate names" as I did everywhere else in the command
reference. Flog me with a SCSI cable, twenty lashes please.
<p> </p>
<li>(<i>first and second printings</i>) <b>p. 273</b>, paragraph under
"User Variables" heading:<br>
The word "set" appears spuriously. The text says "Users can
set also set their own variables..."; the first "set" should
be omitted.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>p. 295 (Chapter 10, example of <tt>cvs2cl.pl</tt>
output)</b>:<br>
O texto descreve a entrada de Tronco de Mudanτa incorretamente como mostrado o simultΓneo confie de trΩs arquivos. De fato, hß quatro arquivos, assim o pr≤ximo parßgrafo de texto (direito depois do ChangLog resumi) deveria comeτar gosta disto:<p>'Os primeiros espetßculos de entrada que foram confiados quatro arquivos imediatamente, com a mensagem de tronco, que " Confiam de pcl-cvs 2.9, s≤ para pontapΘs ". '
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>Copyright notice</b>: A advertΩncia de protegido por direitos autorais no comeτo do livro contΘm uma errata. Direito autorais Θ celebrado de fato por Karl Fogel, nπo O Grupo de Coriolis.
<p> </p>
<li>(<i>somente primeira impressπo</i>) <b>Atrßs sinopse de cobertura</b>: Nenhum conhecimento de Linux desenvolvimento de C++ Θ necessßrio entender este livro, nem especificamente requer " um prßtico - conhecimento nivelado de administraτπo de Linux ", embora um pouco de conhecimento de administraτπo de Unix geral Θ ·til.</li>
</ol>
<p>
<p>
<hr>
<p>Voltar para o <a href="http://cvsbook.red-bean.com/"><i>Open Source Development