Difference between revisions of "SVN"

From CDOT Wiki
Jump to: navigation, search
(References)
(Examine your changes)
Line 30: Line 30:
  
 
==Examine your changes==
 
==Examine your changes==
:After you've made changes, it's a good idea to take a look at exactly what you've changed before committing them to the repository.
+
*After you've made changes, it's a good idea to take a look at exactly what you've changed before committing them to the repository.
 
:<pre>$svn status</pre>
 
:<pre>$svn status</pre>
 
:This will detect all file and tree changes you've made
 
:This will detect all file and tree changes you've made
Line 41: Line 41:
 
:D <filename/directory> - File or directory was deleted from your working copy
 
:D <filename/directory> - File or directory was deleted from your working copy
 
:A <filename/directory> - File or directory was added to your working copy
 
:A <filename/directory> - File or directory was added to your working copy
 +
 +
*<pre>svn diff</pre>
 +
 +
*<pre>svn revert</pre>
 +
 +
==Merge other's changes into your working copy==
 +
*<pre>svn update</pre>
 +
*<pre>svn resolved</pre>
  
 
==Commit your changes==
 
==Commit your changes==

Revision as of 20:22, 22 October 2006

Branch Maintenance

Repository layout:

  • trunk directory - "main line" of development
  • branches directory - branch copies
  • tag directory - tag copies

SVN commands

The typical work cycle will use the following commands:

Update your working copy

When working on a project with a team, you'll want to update your working copy to receive changes made by other developers since your last update
$svn update
U  filename1.c
U  filename2.c
Updated to revision 2.
U <filename> - file was updated (received changes from the server)


Make changes

svn add filename1.c
svn delete filename1.c
svn copy filename1.c filename2.c
svn move filename1.c filename2.c


Examine your changes

  • After you've made changes, it's a good idea to take a look at exactly what you've changed before committing them to the repository.
$svn status
This will detect all file and tree changes you've made


By passing a specific path, you will get information about that item alone:
$svn status stuff/filename3.c
D    stuff/filename3.c
D <filename/directory> - File or directory was deleted from your working copy
A <filename/directory> - File or directory was added to your working copy
  • svn diff
  • svn revert

Merge other's changes into your working copy

  • svn update
  • svn resolved

Commit your changes

svn commit

More commands

  • Compare changes from one revision to another:
svn diff --revision 1:4 filename1.cpp
This example allows us to see what's changed between the first and fourth revision of the filename1.cpp file.
For a complete guide: http://svnbook.red-bean.com/en/1.2/svn.ref.svn.c.diff.html

References