* Merged newxml into HEAD
[linux_from_scratch.git] / editor-manual / chapter03 / diff.xml
blobedc66eefcd48c163a73a5618f6f4c0db63672d04
1 <sect1 id="ch03-diff">
2 <title>cvs diff</title>
3 <?dbhtml filename="diff.html" dir="chapter03"?>
5 <para><userinput>cvs diff</userinput>. This is useful for three different
6 purposes.</para>
8 <para>Firstly, those without write access to the LFS CVS server can use it
9 to generate patches to send to <userinput>lfs-dev</userinput>. To do this,
10 simply edit the files in your local sandbox then run
11 <userinput>cvs diff -u &gt; FILE.patch</userinput> from the root of your
12 LFS directory. You can then attach this file to a message to the
13 <userinput>lfs-dev</userinput> list where someone with editing rights will
14 pick it up and apply it to the book.</para>
16 <para>The second use is to find out what has changed between two revisions
17 of a file by running:</para>
19 <para><screen><userinput>cvs diff -u -r revision1 -r revision2 FILENAME</userinput></screen></para>
21 <para>For example:
22 <userinput>cvs diff -u -r 1.68 -r 1.69 index.xml</userinput> will output a
23 unified diff showing the changes between revisions 1.68 and 1.69 of
24 <filename>index.xml</filename>.</para>
26 <para>Remember that when using cvs diff, you nearly
27 <emphasis>always</emphasis> want to output a unified diff and so either
28 use the <userinput>-u</userinput> switch or add it to your
29 <filename>~/.cvsrc</filename> file.</para>
31 <para>A third use it to recursive request all the changes between your
32 local copy and the copy on the CVS server. This is handy to do before
33 running <userinput>cvs update</userinput> to see what exactly has changed
34 since the last time you ran the update command.</para>
36 </sect1>