forked from toastpp/toastpp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSVN.readme
170 lines (110 loc) · 5.13 KB
/
SVN.readme
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
TOAST version management with SVN (subversion)
==============================================
TOAST version control has switched from CVS to SVN as of 11/03/09.
This document gives a brief overview of how to use SVN with TOAST.
SVN has a number of advantages over CVS, including
- Easier file management. Creating and deleting files and subdirectories
is easier. Moving files to different locations is also better
supported.
- Support for binary files
Further reading:
The official SVN manual is located at
http://svnbook.red-bean.com/en/1.5/index.html
Please try the new SVN repository and report any problems. Please
do no longer commit to the CVS repository. This should be regarded
as an archive from now on.
1. Make sure you have access to an SVN client:
----------------------------------------------
On a Linux/Unix machine, type
svn help
If this brings up a list of commands, the svn command line client
is installed on your system. Make sure that the client version is
1.4 or higher. Earlier versions may not understand the format of
the toast repository.
On Windows, you probably need to install an SVN client yourself.
I recommend TortoiseSVN, which can be downloaded here:
http://sourceforge.net/projects/tortoisesvn/
TortoiseSVN plugs into Explorer windows and adds file commands to
manage your checked-out files.
2. The TOAST repository
-----------------------
The TOAST SVN repository is located in the CS file system at
/cs/research/medim/projects0/green/projects/svn/toast/trunk
There are two ways to address this location from svn:
If the repository path is mounted on your local file system, then
its address for the purposes of svn is
file:///cs/research/medim/projects0/green/projects/svn/toast/trunk
Otherwise you can access it via ssh, in which case the address is
svn+ssh://haynes.cs.ucl.ac.uk/cs/research/medim/projects0/green/projects/svn/toast/trunk
(You can use other servers instead of haynes, but apparently not sonic,
since this seems to run an incompatible version of svn).
In Linux for ease of use, you should create an environment variable
with the appropriate address. In the following, we assume that
environment variable TOAST_SVNREP contains the address of the repository.
In Windows, you can use either the svn+ssh address style, or you
can mount the /cs/research/medim file system as a network drive. For
example, if you mounted /cs/research/medim as drive X, then the
address of the repository is
file:///x:/projects0/green/projects/svn/toast/trunk
Use the local file system address instead of the ssh address if you
can, since this doesn't ask for your password each time.
3. Checking out the toast sources
---------------------------------
Create a directory to which you want to check out the toast sources,
and cd to it.
Command line: Type
svn checkout $TOAST_SVNREP
This will create a directory 'trunk' containing the toast sources
('trunk' to indicate the main development version, as opposed to
potential branch versions.)
If you don't like the 'trunk' directory, you can specify a separate
name, e.g.
svn checkout $TOAST_SVNREP toast_svn
Windows: right-click in Explorer inside your target directory,
and select SVN Checkout. Enter the location of the repository
according to Section 2.
4. Updating your checked-out version
------------------------------------
Command line: From within your toast directory, type
svn update
This will update your checked out version from the repository, and
merge repository changes with your changes where required. Look
out for warnings of conflicts, which need to be resolved manually.
Windows: In Explorer, right-click inside your toast directory and
select SVN Update.
5. Committing changes
---------------------
To commit your changes to the repository, use
svn commit
inside the toast source tree. You can commit either the entire
source tree (from the toast root directory), a sub-tree, or
individual files.
WARNING: Before committing, always first update your sources
from the repository, check for conflicts, and run tests to
ensure that toast still behaves ok. Conflicts must always be
resolved in the checkout directory, they cannot be resolved in
the repository.
5. Adding, deleting, moving.
----------------------------
You can add new files to the repository, and delete, move or
rename existing ones.
svn add file.name
will schedule a file for addition.
svn rm file.name
will delete a file from your source tree, and schedule its
deletion from the repository.
svn mv file.name new.name
will rename or move a file in your source tree, and schedule
its move in the repository.
The changes in the repository will take place on the next
commit.
Make sure you always use the appropriate svn command on
files that are under version control, to make the repository
aware of the changes. For example, use
svn mv
instead of
mv
otherwise the original file will be checked out again on the
next update.
In windows, the corresponding commands (Add, delete, rename,...)
can be found in the Tortoise SVN explorer menu.