Quick reference for CVS users moving to SVN
The LHCb code is kept in a
Subversion
repository
(currently being migrated from CVS).
For instructions about the usage of the SVN repository, look at
SVNUsageGuidelines.
Table of Contents
commands
cvs |
svn |
Description |
update -A |
update |
update your local copy to what is on the head |
-N update -A |
info |
the status of the local repository and what's on the head |
diff |
info |
if you just want to know what the current revision is |
diff -r |
diff -r |
difference to a separate revision, or between two different repository locations handy link |
tagging
Users do not need to tag anything in SVN, the revision number you get when modifying the SVN repository is the same.
Release managers can use the basic svn cp, svn rm, etc commands to fiddle around with the tags rather than the trunk, and/or can use the tag_package script to copy the current trunk to the tags directory.
I have a problem comitting, what's wrong?
Do you see this:
+verbatim+
svn: Commit blocked by pre-commit hook (exit code 1) with output:
Cannot modify files in tags directories
-verbatim-
??
If so you've probably done the getpack of the tag instead of the trunk. Not a good idea unless you want to create a branch, because create a branch is what you've just done, unknowingly.
+verbatim+
>
svn info
....../tags/..../vXrY
-verbatim-
You have two choices:
- Getpack the trunk instead and make your changes there
- Try to merge your changes with svn
For (2) first switch to the trunk:
+verbatim+
>
svn switch ....../tags/..../vXrY ...../trunk/..../
>
svn update
#fix conflicts, if this is not possible, you've made a branch, get in touch with the release manager!
>
svn commit -m 'merged my changes onto the trunk'
-verbatim-
--
RobLambert - 22-Apr-2010