Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /pages/trunk/DEV/sf-howto.html
ViewVC logotype

Annotation of /pages/trunk/DEV/sf-howto.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1315 - (view) (download) (as text)

1 : macqueen 962 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 :     <html>
3 :     <head>
4 :     <title>SML/NJ Project Howto</title>
5 :     </head>
6 :    
7 :     <body BGCOLOR="ffffff">
8 :     <h1>SML/NJ Project Howto</h1>
9 :    
10 :     This is a collection of hints and pointers to help new users of
11 :     SourceForge and CVS to use the facilities of the SML/NJ project.
12 :     For general information on using SourceForge, see the
13 :     <a href="http://sourceforge.net/docman/?group_id=1">
14 :     SourceForge Documentation Manager</a> and the
15 :     "Getting Started with SourcForge" link on that page under the
16 :     heading "General Documentation".
17 :     <p>
18 :     Note: <em>loginname</em> stands for the SourceForge user login name.
19 :     <p>
20 :     <h3> Project directory </h3>
21 :     The SML/NJ project directory path is:
22 :     <pre>
23 :     /home/groups/s/sm/smlnj/
24 :     </pre>
25 :     This directory contains subdirectories <code>htdocs</code> and <code>cgi-bin</code>.
26 :     <p>
27 :    
28 : macqueen 966 <h3>Logging in to your sourceforge user account</h3>
29 : macqueen 962 <pre>
30 : macqueen 966 ssh -l loginname shell.sourceforge.net
31 : macqueen 962 </pre>
32 :     Your home directory will look something like: <code>/home/users/m/ma/macqueen</code>.
33 : macqueen 966 <p>
34 :     You can abbreviate the command to (e.g.)
35 :     <pre>
36 :     ssh sf-shell
37 :     </pre>
38 :     by defining sf-shell as a host alias in your .ssh/config file:
39 :     <pre>
40 :     Host = sf-shell
41 :     HostName = shell.sourceforge.net
42 :     User = loginname
43 :     </pre>
44 :     <p>
45 :     <h3>Moving files to sourceforge</h3>
46 : macqueen 1315 SourceForge does not support ftp. You can copy files (localfile) to
47 :     SourceForge using scp. For instance, you can copy file localfile to
48 :     your sourceforge home directory by executing a command like:
49 : macqueen 966 <pre>
50 :     scp localfile macqueen@smlnj.sourceforge.net:/home/users/m/ma/macqueen
51 :     </pre>
52 : macqueen 1315 or simply
53 :     <pre>
54 :     scp localfile sf-shell:
55 :     </pre>
56 :     if you have defined host sf-shell in your ssh config file as
57 :     illustrated above. Similarly, to copy a file or files to the
58 :     top-level directory of the www.smlnj.org web site, you could execute
59 :     the command:
60 :     <pre>
61 :     scp localfile sf-shell:/home/groups/s/sm/smlnj/htdocs
62 :     </pre>
63 : macqueen 962
64 : macqueen 1315
65 : macqueen 962 <h3>Setting up CVS access</h3>
66 :     <ol>
67 :     <li> In your user Account Maintenance page, go to "Shell Account Information"
68 :     and click [Edit Keys] next to "CVS/SSH Shared Keys". Insert contents
69 :     of ~/.ssh/identity.pub file on your local machine into the text box.
70 :     Make sure that when you cut and paste your key that it remains a single
71 :     line of text! Sometimes spurious line breaks are added when your
72 :     key is printed, and these will prevent CVS from working. You can verify
73 :     that it worked by checking the contents of the .ssh/authorized_keys
74 :     file in your SourceForge home directory.
75 :     <p>
76 :     <li> Set CVS_RSH:
77 :     <pre>
78 :     export CVS_RSH=ssh
79 :     </pre>
80 : macqueen 966 <p>
81 : macqueen 962 <li> Run ssh-agent and ssh-add for convenience, to avoid having to repeatedly
82 :     type in your ssh passphrase or SourceForge password:
83 :     <pre>
84 :     eval `ssh-agent`
85 :     ssh-add -p &lt;&lt;EOF
86 :     your pass phrase
87 :     EOF
88 :     </pre>
89 :     These last three commands can be, and probably should be, added to your
90 :     .profile or .login file. "your pass phrase" refers to the pass phrase
91 :     that you gave when you created your ssh identity files with ssh-keygen.
92 :     Note that some versions of ssh do not support the -p flag, in which case
93 :     you will have to run ssh-add interactively and type in your pass phrase.
94 :     Unfortunately, the version of ssh available on the SourceForge shell servers
95 : macqueen 966 is one of these, so ssh-add has to be run manually after login.
96 :     <p>
97 :     <li> Create a host entry for cvs.sourceforge.net in your ssh config file (.ssh/config)
98 :     like the following (replacing loginname with your SF user name, as usual):
99 :     <pre>
100 :     Host = sf-smlnj
101 : macqueen 1315 HostName = cvs.sourceforge.net
102 : macqueen 966 User = loginname
103 :     </pre>
104 :     This defines a standard alias for the cvs host that agrees with that used
105 :     the CVS/Root files (in htdocs, for instance).
106 :     <p>
107 : macqueen 962 <li> Set CVSROOT:
108 :     <pre>
109 : macqueen 966 export CVSROOT=sf-smlnj:/cvsroot/smlnj
110 : macqueen 962 </pre>
111 : macqueen 966 Note the use of the alias "sf-smlnj" defined in the config file from the
112 :     previous item.
113 :     <p>
114 :     <li> Now you can execute cvs commands without needing -d arguments, passwords,
115 :     or pass phrases, e.g.:
116 : macqueen 962 <pre>
117 :     cvs update bugs
118 :     </pre>
119 :     </ol>
120 : macqueen 966 In order to execute cvs commands on the SourceForge shell server, you
121 :     should run ssh-keygen from your SF account to generate a new ssh key, and
122 :     then add that key to the end of your .ssh/authorized_keys file. You can
123 :     also define CVS_RSH and run ssh-agent in your .profile at
124 :     SourceForge to make things simpler.
125 : macqueen 962
126 :     <h3> Updating web pages </h3>
127 : macqueen 1315 The htdocs directory in the smlnj project home directory (/home/groups/s/sm/smlnj/htdocs)
128 : macqueen 966 contains the web pages for the project. These web pages can be accessed using
129 :     either of the following URLs:
130 :     <blockquote>
131 :     <a href="http://www.smlnj.org">http://www.smlnj.org</a><br>
132 :     <a href="http://smlnj.sourceforge.net">http://smlnj.sourceforge.net/index.html</a>
133 :     </blockquote>
134 :     The htdocs directory is a CVS working directory created by checking out
135 :     the htdocs module from the project CVS repository. The Bell Labs copy
136 :     (in /home/sml/Doc/WWW/smlnj) is also checked-out from the repository ("htdocs"
137 :     and "smlnj" are both aliases of the pages module in the repository). If you
138 :     have extensive edits to perform on the web pages, we recommend that you check
139 : macqueen 1315 out your own private working copy, make the edits, test them, and
140 :     commit the changes.
141 : macqueen 966 After the changes are commited, "cvs update" must be performed in
142 :     the two directories
143 :     <blockquote>
144 :     /home/groups/s/sm/smlnj/htdocs (at SF)<br>
145 : macqueen 1315 /stage/w3serv/smlnj.cs.uchicago.edu (at U of C)
146 : macqueen 966 </blockquote>
147 : macqueen 1315 to synchronize them with the changed repository. You can do the
148 : macqueen 966 update on the htdocs directory yourself as described in the next
149 :     paragraph, but you may need to send mail to Bell Labs to have the
150 :     update done on that copy until we set up automatic email notifications
151 :     of commits to the web pages repository.
152 : macqueen 962 <p>
153 : macqueen 966 To actually update the pages at SF, you login to your SF account
154 :     and do (e.g.)
155 : macqueen 962 <pre>
156 :     cd /home/groups/s/sm/smlnj/htdocs
157 :     ... set up cvs ...
158 : macqueen 966 export CVSROOT=sf-smlnj:/cvsroot/smlnj
159 :     cvs update htdocs
160 : macqueen 962 </pre>
161 : macqueen 1315 The definition of host sf-smlnj for your SF shell account should look
162 :     like this:
163 :     <pre>
164 :     Host = sf-smlnj
165 :     Hostname = cvs1
166 :     User = username
167 :     </pre>
168 :     Note the Hostname definition; "cvs1" is the local name for the cvs
169 :     server at SF.
170 :    
171 : macqueen 962 <p>
172 :     <hr>
173 :     <address><a href="mailto:macqueen@users.sourceforge.net">Dave MacQueen</a></address>
174 :     <!-- Created: Fri Feb 16 12:36:42 EST 2001 -->
175 :     <!-- hhmts start -->
176 : macqueen 1315 Last modified: Thu Mar 20 22:57:22 CST 2003
177 : macqueen 962 <!-- hhmts end -->
178 :     </body>
179 :     </html>

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0