This documentation was written to describe the 1.6.x series of Subversion. If you are running a different version of Subversion, you are strongly encouraged to visit and instead consult the version of this documentation appropriate for your version of Subversion.


svn update (up) — Update your working copy.


svn update [PATH...]


svn update brings changes from the repository into your working copy. If no revision is given, it brings your working copy up to date with the HEAD revision. Otherwise, it synchronizes the working copy to the revision given by the --revision (-r) option. As part of the synchronization, svn update also removes any stale locks (see the section called “Sometimes You Just Need to Clean Up”) found in the working copy.

For each updated item, it prints a line that starts with a character reporting the action taken. These characters have the following meaning:




Broken lock (third column only)











A character in the first column signifies an update to the actual file, whereas updates to the file's properties are shown in the second column. Lock information is printed in the third column.

As with most subcommands, you can limit the scope of the update operation to a particular tree depth using the --depth option. Alternatively, you can use the --set-depth option to set a new sticky working copy depth on the update target.


--accept ACTION
--depth ARG
--diff3-cmd CMD
--editor-cmd CMD
--quiet (-q)
--revision (-r) REV
--set-depth ARG


Pick up repository changes that have happened since your last update:

$ svn update
A    newdir/toggle.c
A    newdir/disclose.c
A    newdir/launch.c
D    newdir/README
Updated to revision 32.

You can also update your working copy to an older revision (Subversion doesn't have the concept of sticky files like CVS does; see Appendix B, Subversion for CVS Users):

$ svn update -r30
A    newdir/README
D    newdir/toggle.c
D    newdir/disclose.c
D    newdir/launch.c
U    foo.c
Updated to revision 30.
[Tip] Tip

If you want to examine an older revision of a single file, you may want to use svn cat instead—it won't change your working copy.

svn update is also the primary mechanism used to configure sparse working copies. When used with the --set-depth, the update operation will omit or reenlist individual working copy members by modifying their recorded ambient depth to the depth you specify (fetching information from the repository as necessary). See the section called “Sparse Directories” for more about sparse directories.