/[MITgcm]/mitgcm.org/usingcvstoget.html
ViewVC logotype

Annotation of /mitgcm.org/usingcvstoget.html

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (hide annotations) (download) (as text)
Fri Jul 6 18:36:54 2001 UTC (20 years, 1 month ago) by adcroft
Branch: MAIN
Changes since 1.1: +3 -3 lines
File MIME type: text/html
Added -P to checkout instructions. Helps keep things tidy.

1 adcroft 1.1 <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
2     <html>
3     <head>
4     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5     <meta name="GENERATOR" content="Mozilla/4.75 [en] (X11; U; Linux 2.2.14-5.0 i686) [Netscape]">
6     </head>
7     <body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000">
8    
9     <center>
10     <h1>
11     Obtaining MITgcmUV source using CVS</h1></center>
12    
13     <h2>
14     Environment</h2>
15    
16     <blockquote>
17     <pre>setenv CVSROOT :pserver:cvsanon@mitgcm.org:/u/u0/gcmpack
18     cvs login ( CVS password: cvsanon )</pre>
19     </blockquote>
20     You only need to do "cvs login" once but the environment should be set
21     in you .cshrc or .tcshrc.
22     <h2>
23     To obtain the latest source (with CVS information)</h2>
24    
25     <blockquote>
26 adcroft 1.2 <pre>cvs co -d <i>directory</i> -P models/MITgcmUV</pre>
27 adcroft 1.1 </blockquote>
28     This creates a directory called <i>directory</i>. If <i>directory</i> already
29     exists this command updates your code based on the repository (see "Getting
30     updates from the repository" below). Each directory in the source tree
31     with contain a directory "CVS". This contains information required by CVS
32     to keep track of your file versions with respect to the repository. <i>Don't
33     edit the files in CVS</i>.
34     <h2>
35     Show changes that YOU have made</h2>
36     If you are running into difficulties it is very useful to see the changes
37     that you yourself have made since obtaining the code.
38     <br>From within your working directory:
39     <blockquote>
40     <pre>cvs diff</pre>
41     </blockquote>
42     will show the differences between your version and the version that you
43     checked out. It acts recursively on all directories below your current
44     directory. You can limit the operation to just one file or directory by
45     specifying those as arguments:
46     <blockquote>
47     <pre>cvs diff <i>file</i></pre>
48     </blockquote>
49    
50     <h2>
51     Show changes to the repository that you don't have</h2>
52     The source code evolves continuously and you should try to stay up to date.
53     To see what needs to be updated:
54     <blockquote>
55     <pre>cvs -n update</pre>
56     </blockquote>
57     behaves just as "cvs update" but doesn't actually change anything. This
58     is a useful way of summarizing the state
59     <br>of your code. The meaning of the output is summarized in the next topic.
60     <h2>
61     Getting updates from the repository</h2>
62     You can download and merge updates from the repository to bring you working
63     code up to date:
64     <blockquote>
65     <pre>cvs update</pre>
66     </blockquote>
67     will work recursively on all files in the current directory and below.
68     To update just a specific file or
69     <br>directory:
70     <blockquote>
71     <pre>cvs update <i>file</i></pre>
72     </blockquote>
73     "cvs update" produces output to the terminal with the following meanings:
74     <br>&nbsp;
75     <table BORDER CELLPADDING=3 WIDTH="80%" NOSAVE >
76     <tr ALIGN=LEFT VALIGN=TOP NOSAVE>
77     <td NOSAVE>U <i>file</i></td>
78    
79     <td>indicates that <i>file</i> was brought up to date with the repository
80     or that it exists in the repository but not in your work space.</td>
81     </tr>
82    
83     <tr>
84     <td>P <i>file</i></td>
85    
86     <td>does exactly as above but uses the "patch" method.</td>
87     </tr>
88    
89     <tr ALIGN=LEFT VALIGN=TOP>
90     <td ALIGN=LEFT VALIGN=TOP>M <i>file</i></td>
91    
92     <td>means the <i>file</i> was modified in your work space. Any additional
93     changes from the repository were merged in successfully.</td>
94     </tr>
95    
96     <tr>
97     <td>C <i>file</i></td>
98    
99     <td>means a merge is necessary because both the your copy and the repository
100     have changed <b>but</b> there is a conflict between the changes.</td>
101     </tr>
102    
103     <tr>
104     <td>? <i>file</i></td>
105    
106     <td>means the file exists in your work space but not on the repository.</td>
107     </tr>
108     </table>
109    
110     <blockquote>&nbsp;</blockquote>
111     When conflicts arise, the sections of code are both kept and surrounded
112     by &lt;&lt;&lt;&lt;&lt;, ===== and >>>>> indicators. You need to
113     <br>examine these lines of the files and resolve the conflict.
114     <h2>
115     Wow! CVS is so good, where can I learn more?</h2>
116     The <a href="http://www.loria.fr/~molli/cvs/doc/cvs_toc.html">basic manual</a>
117     is a good reference. There is also an <a href="http://www.loria.fr/~molli/cvs/cvs-tut/cvs_tutorial_toc.html">online
118     tutorial</a> as well as an <a href="http://www.loria.fr/~molli/cvs/cvstrain/cvstrain.html">training
119     manual</a>. For those who prefer the good old fashioned book there's <a href="http://cvsbook.red-bean.com/">"Open
120     Source Development With CVS"</a>.
121     <br>
122     <hr WIDTH="100%">
123     <table CELLSPACING=0 CELLPADDING=0 WIDTH="100%" NOSAVE >
124     <tr NOSAVE>
125 adcroft 1.2 <td NOSAVE>Last modified on $Date: 2001/02/09 18:58:02 $</td>
126 adcroft 1.1
127     <td>
128 adcroft 1.2 <div align=right>CVS: $Source: /u/gcmpack/mitgcm.org/usingcvstoget.html,v $Revision: 1.1 $</div>
129 adcroft 1.1 </td>
130     </tr>
131     </table>
132    
133     </body>
134     </html>

  ViewVC Help
Powered by ViewVC 1.1.22